From c5f6e8288d69f4c0c97ed95370b6c52c5c753dc3 Mon Sep 17 00:00:00 2001 From: z66 <1415243231@qq.com> Date: Tue, 28 Oct 2025 13:43:06 +0800 Subject: [PATCH] =?UTF-8?q?ai=E6=8F=90=E5=8F=96rss=E7=9B=B8=E5=85=B3?= =?UTF-8?q?=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- logs/application.log | 52589 ++++++++++++++++ logs/errors.log | 261 + main.py | 25 +- output/last_update.pkl | Bin 53 -> 53 bytes .../ai_processors/ai_processor_rss_data.py | 453 + processors/image_processor.py | 0 processors/text_processor.py | 0 tools/task_manager.ipynb | 48 +- 8 files changed, 53336 insertions(+), 40 deletions(-) create mode 100644 processors/ai_processors/ai_processor_rss_data.py delete mode 100644 processors/image_processor.py delete mode 100644 processors/text_processor.py diff --git a/logs/application.log b/logs/application.log index 501afd4..389ecfc 100644 --- a/logs/application.log +++ b/logs/application.log @@ -80486,3 +80486,52592 @@ 2025-10-23 17:17:28.934 | DEBUG | mysql_agent:116 - 执行SQL查询 → module: 'MySQLAgent(Windows)' → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:17:38.941 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:17:38 + → module: 'TaskScheduler' +2025-10-23 17:17:38.941 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:17:48.949 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:17:48 + → module: 'TaskScheduler' +2025-10-23 17:17:48.949 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:17:58.956 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:17:58 + → module: 'TaskScheduler' +2025-10-23 17:17:58.956 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:18:08.962 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:18:08 + → module: 'TaskScheduler' +2025-10-23 17:18:08.962 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:18:18.969 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:18:18 + → module: 'TaskScheduler' +2025-10-23 17:18:18.969 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:18:28.996 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:18:28 + → module: 'TaskScheduler' +2025-10-23 17:18:28.996 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:18:39.003 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:18:39 + → module: 'TaskScheduler' +2025-10-23 17:18:39.003 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:18:49.010 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:18:49 + → module: 'TaskScheduler' +2025-10-23 17:18:49.010 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:18:59.016 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:18:59 + → module: 'TaskScheduler' +2025-10-23 17:18:59.016 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:19:09.024 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:19:09 + → module: 'TaskScheduler' +2025-10-23 17:19:09.024 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:19:19.052 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:19:19 + → module: 'TaskScheduler' +2025-10-23 17:19:19.052 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:19:29.060 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:19:29 + → module: 'TaskScheduler' +2025-10-23 17:19:29.060 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:19:39.083 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:19:39 + → module: 'TaskScheduler' +2025-10-23 17:19:39.084 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:19:49.110 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:19:49 + → module: 'TaskScheduler' +2025-10-23 17:19:49.110 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:19:59.118 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:19:59 + → module: 'TaskScheduler' +2025-10-23 17:19:59.118 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:20:09.139 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:20:09 + → module: 'TaskScheduler' +2025-10-23 17:20:09.139 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:20:09.149 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 17:20:09.167 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 17:20:09.168 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 17:20:09.168 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 17:20:09.168 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 17:20:09.169 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 17:20:09.193 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 17:20:09.209 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 17:20:09.210 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 17:20:09.211 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 09:05:55 + → module: 'NewsAPIClient' +2025-10-23 17:20:09.211 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 09:05:55 + → module: 'NewsAPIClient' +2025-10-23 17:20:09.211 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 17:20:09.662 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:20:09.674 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:20:09.683 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:20:10.000 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:20:10.002 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 17:20:10.002 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.79秒 + → module: 'NewsAPIClient' +2025-10-23 17:20:10.002 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 17:20:10.003 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 17:20:10.004 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 17:20:10.005 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 17:20:10.007 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 09:05:55 + → module: 'NewsAPIClient' +2025-10-23 17:20:10.007 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 09:05:55 + → module: 'NewsAPIClient' +2025-10-23 17:20:10.008 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.84秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 17:20:10.016 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 17:20:10.017 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 17:20:19.170 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:20:19 + → module: 'TaskScheduler' +2025-10-23 17:20:19.171 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:20:29.177 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:20:29 + → module: 'TaskScheduler' +2025-10-23 17:20:29.177 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:20:39.185 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:20:39 + → module: 'TaskScheduler' +2025-10-23 17:20:39.185 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:20:49.193 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:20:49 + → module: 'TaskScheduler' +2025-10-23 17:20:49.193 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:20:59.201 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:20:59 + → module: 'TaskScheduler' +2025-10-23 17:20:59.201 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:21:09.229 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:21:09 + → module: 'TaskScheduler' +2025-10-23 17:21:09.229 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:21:19.266 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:21:19 + → module: 'TaskScheduler' +2025-10-23 17:21:19.267 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:21:29.402 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:21:29 + → module: 'TaskScheduler' +2025-10-23 17:21:29.402 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:21:39.435 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:21:39 + → module: 'TaskScheduler' +2025-10-23 17:21:39.436 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:21:49.444 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:21:49 + → module: 'TaskScheduler' +2025-10-23 17:21:49.444 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:21:59.454 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:21:59 + → module: 'TaskScheduler' +2025-10-23 17:21:59.454 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:22:09.461 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:22:09 + → module: 'TaskScheduler' +2025-10-23 17:22:09.461 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:22:19.493 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:22:19 + → module: 'TaskScheduler' +2025-10-23 17:22:19.493 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:22:29.502 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:22:29 + → module: 'TaskScheduler' +2025-10-23 17:22:29.502 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:22:39.509 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:22:39 + → module: 'TaskScheduler' +2025-10-23 17:22:39.509 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:22:49.519 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:22:49 + → module: 'TaskScheduler' +2025-10-23 17:22:49.519 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:22:59.544 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:22:59 + → module: 'TaskScheduler' +2025-10-23 17:22:59.544 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:23:09.552 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:23:09 + → module: 'TaskScheduler' +2025-10-23 17:23:09.552 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:23:19.561 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:23:19 + → module: 'TaskScheduler' +2025-10-23 17:23:19.561 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:23:29.567 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:23:29 + → module: 'TaskScheduler' +2025-10-23 17:23:29.568 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:23:39.576 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:23:39 + → module: 'TaskScheduler' +2025-10-23 17:23:39.576 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:23:49.585 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:23:49 + → module: 'TaskScheduler' +2025-10-23 17:23:49.585 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:23:59.593 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:23:59 + → module: 'TaskScheduler' +2025-10-23 17:23:59.593 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:24:09.601 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:24:09 + → module: 'TaskScheduler' +2025-10-23 17:24:09.601 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:24:19.629 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:24:19 + → module: 'TaskScheduler' +2025-10-23 17:24:19.629 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:24:29.649 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:24:29 + → module: 'TaskScheduler' +2025-10-23 17:24:29.649 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:24:39.674 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:24:39 + → module: 'TaskScheduler' +2025-10-23 17:24:39.675 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:24:49.696 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:24:49 + → module: 'TaskScheduler' +2025-10-23 17:24:49.696 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:24:59.705 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:24:59 + → module: 'TaskScheduler' +2025-10-23 17:24:59.705 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:25:09.731 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:25:09 + → module: 'TaskScheduler' +2025-10-23 17:25:09.731 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:25:09.739 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 17:25:09.762 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 17:25:09.763 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 17:25:09.763 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 17:25:09.763 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 17:25:09.763 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 17:25:09.793 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 17:25:09.797 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 17:25:09.797 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 17:25:09.798 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 09:05:55 + → module: 'NewsAPIClient' +2025-10-23 17:25:09.798 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 09:05:55 + → module: 'NewsAPIClient' +2025-10-23 17:25:09.798 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 17:25:10.206 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:25:10.248 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:25:10.261 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:25:10.581 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:25:10.582 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 17:25:10.583 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.78秒 + → module: 'NewsAPIClient' +2025-10-23 17:25:10.583 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 17:25:10.584 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 17:25:10.584 | DEBUG | rss_subscriptions:235 - 处理条目 1: 第138届广交会第二期开展 万余家企业聚焦“品质家居” + → module: 'NewsAPIClient' +2025-10-23 17:25:10.588 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 17:25:10.589 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 17:25:10.591 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 17:25:10.598 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 17:25:10.599 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 17:25:10.599 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 17:25:10.599 | DEBUG | rss_subscriptions:235 - 处理条目 1: 日媒:日本新任首相高市早苗定于24日发表施政演说 + → module: 'NewsAPIClient' +2025-10-23 17:25:10.602 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 17:25:10.604 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 17:25:10.605 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 17:25:10.613 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 17:25:10.613 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 17:25:10.615 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 17:25:10.615 | DEBUG | rss_subscriptions:235 - 处理条目 1: 日媒:日本新任首相高市早苗定于24日发表施政演说 + → module: 'NewsAPIClient' +2025-10-23 17:25:10.618 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 17:25:10.619 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 17:25:10.621 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 17:25:10.626 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 0 + → error_message: "Duplicate entry '日媒:日本新任首相高市早苗定于24日发表施政æ¼' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '日媒:日本新任首相高市早苗定于24日发表施政演说...', '文章链接': 'http://www.chinanews.com/gj/2025/10-23/10503321.shtml...', '文章摘要': '中新网10月23日电 据日媒报道,当地时间10月23日,日本执政党与在野党在众议院议院运营委员会理事会上达成一致,新任首相高市早苗的施政演说定于当地时间24日1... +2025-10-23 17:25:10.627 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 0 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-23 17:25:10.628 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '日媒:日本新任首相高市早苗定于24日发表施政æ¼' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '日媒:日本新任首相高市早苗定于24日发表施政æ¼' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '日媒:... +2025-10-23 17:25:10.628 | INFO | rss_subscriptions:259 - 成功写入 0/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 17:25:10.629 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 09:22:20 + → module: 'NewsAPIClient' +2025-10-23 17:25:10.630 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 09:22:20 + → module: 'NewsAPIClient' +2025-10-23 17:25:10.630 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.87秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 17:25:10.638 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 17:25:10.639 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 17:25:19.764 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:25:19 + → module: 'TaskScheduler' +2025-10-23 17:25:19.764 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:25:29.772 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:25:29 + → module: 'TaskScheduler' +2025-10-23 17:25:29.772 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:25:39.779 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:25:39 + → module: 'TaskScheduler' +2025-10-23 17:25:39.779 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:25:49.806 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:25:49 + → module: 'TaskScheduler' +2025-10-23 17:25:49.806 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:25:59.832 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:25:59 + → module: 'TaskScheduler' +2025-10-23 17:25:59.832 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:26:09.861 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:26:09 + → module: 'TaskScheduler' +2025-10-23 17:26:09.861 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:26:19.868 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:26:19 + → module: 'TaskScheduler' +2025-10-23 17:26:19.869 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:26:29.891 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:26:29 + → module: 'TaskScheduler' +2025-10-23 17:26:29.891 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:26:39.913 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:26:39 + → module: 'TaskScheduler' +2025-10-23 17:26:39.913 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:26:49.922 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:26:49 + → module: 'TaskScheduler' +2025-10-23 17:26:49.922 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:26:59.958 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:26:59 + → module: 'TaskScheduler' +2025-10-23 17:26:59.958 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:27:09.991 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:27:09 + → module: 'TaskScheduler' +2025-10-23 17:27:09.991 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:27:20.000 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:27:20 + → module: 'TaskScheduler' +2025-10-23 17:27:20.000 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:27:30.008 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:27:30 + → module: 'TaskScheduler' +2025-10-23 17:27:30.008 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:27:40.016 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:27:40 + → module: 'TaskScheduler' +2025-10-23 17:27:40.016 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:27:50.024 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:27:50 + → module: 'TaskScheduler' +2025-10-23 17:27:50.024 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:28:00.032 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:28:00 + → module: 'TaskScheduler' +2025-10-23 17:28:00.032 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:28:10.040 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:28:10 + → module: 'TaskScheduler' +2025-10-23 17:28:10.040 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:28:20.047 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:28:20 + → module: 'TaskScheduler' +2025-10-23 17:28:20.047 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:28:30.055 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:28:30 + → module: 'TaskScheduler' +2025-10-23 17:28:30.055 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:28:40.062 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:28:40 + → module: 'TaskScheduler' +2025-10-23 17:28:40.062 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:28:50.069 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:28:50 + → module: 'TaskScheduler' +2025-10-23 17:28:50.069 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:29:00.077 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:29:00 + → module: 'TaskScheduler' +2025-10-23 17:29:00.077 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:29:10.096 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:29:10 + → module: 'TaskScheduler' +2025-10-23 17:29:10.096 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:29:20.125 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:29:20 + → module: 'TaskScheduler' +2025-10-23 17:29:20.125 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:29:30.133 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:29:30 + → module: 'TaskScheduler' +2025-10-23 17:29:30.133 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:29:40.159 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:29:40 + → module: 'TaskScheduler' +2025-10-23 17:29:40.159 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:29:50.167 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:29:50 + → module: 'TaskScheduler' +2025-10-23 17:29:50.167 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:30:00.190 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:30:00 + → module: 'TaskScheduler' +2025-10-23 17:30:00.190 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:30:00.196 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 17:30:00.227 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 17:30:00.228 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 17:30:00.228 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 17:30:00.228 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 17:30:00.229 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 17:30:00.254 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 17:30:00.258 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 17:30:00.258 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 17:30:00.259 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 09:22:20 + → module: 'NewsAPIClient' +2025-10-23 17:30:00.259 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 09:22:20 + → module: 'NewsAPIClient' +2025-10-23 17:30:00.259 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 17:30:00.717 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:30:00.733 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:30:00.746 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:30:01.110 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:30:01.112 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 17:30:01.113 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.85秒 + → module: 'NewsAPIClient' +2025-10-23 17:30:01.113 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 17:30:01.114 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 17:30:01.115 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 17:30:01.116 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 17:30:01.116 | DEBUG | rss_subscriptions:235 - 处理条目 1: 吴石将军长女吴兰成林海行医二十余载 用坚守筑成港湾 + → module: 'NewsAPIClient' +2025-10-23 17:30:01.117 | DEBUG | rss_subscriptions:235 - 处理条目 2: 【东盟专线】这口“郑和井”见证中马友谊源远流长 + → module: 'NewsAPIClient' +2025-10-23 17:30:01.119 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 17:30:01.121 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 17:30:01.122 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 2 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 17:30:01.133 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 2 + → total_inserted: 2 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 17:30:01.134 | INFO | rss_subscriptions:259 - 成功写入 2/2 条记录 + → module: 'NewsAPIClient' +2025-10-23 17:30:01.136 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 09:27:18 + → module: 'NewsAPIClient' +2025-10-23 17:30:01.136 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 09:27:18 + → module: 'NewsAPIClient' +2025-10-23 17:30:01.137 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.91秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 17:30:01.145 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 17:30:01.145 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 17:30:10.230 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:30:10 + → module: 'TaskScheduler' +2025-10-23 17:30:10.230 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:30:20.238 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:30:20 + → module: 'TaskScheduler' +2025-10-23 17:30:20.238 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:30:30.260 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:30:30 + → module: 'TaskScheduler' +2025-10-23 17:30:30.260 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:30:40.287 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:30:40 + → module: 'TaskScheduler' +2025-10-23 17:30:40.287 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:30:50.318 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:30:50 + → module: 'TaskScheduler' +2025-10-23 17:30:50.318 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:31:00.349 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:31:00 + → module: 'TaskScheduler' +2025-10-23 17:31:00.350 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:31:10.358 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:31:10 + → module: 'TaskScheduler' +2025-10-23 17:31:10.358 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:31:20.503 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:31:20 + → module: 'TaskScheduler' +2025-10-23 17:31:20.507 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:31:30.587 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:31:30 + → module: 'TaskScheduler' +2025-10-23 17:31:30.587 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:31:40.595 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:31:40 + → module: 'TaskScheduler' +2025-10-23 17:31:40.596 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:31:50.604 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:31:50 + → module: 'TaskScheduler' +2025-10-23 17:31:50.604 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:32:00.612 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:32:00 + → module: 'TaskScheduler' +2025-10-23 17:32:00.612 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:32:10.620 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:32:10 + → module: 'TaskScheduler' +2025-10-23 17:32:10.620 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:32:20.627 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:32:20 + → module: 'TaskScheduler' +2025-10-23 17:32:20.627 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:32:30.635 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:32:30 + → module: 'TaskScheduler' +2025-10-23 17:32:30.635 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:32:40.643 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:32:40 + → module: 'TaskScheduler' +2025-10-23 17:32:40.643 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:32:50.672 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:32:50 + → module: 'TaskScheduler' +2025-10-23 17:32:50.672 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:33:00.680 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:33:00 + → module: 'TaskScheduler' +2025-10-23 17:33:00.680 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:33:10.690 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:33:10 + → module: 'TaskScheduler' +2025-10-23 17:33:10.690 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:33:20.698 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:33:20 + → module: 'TaskScheduler' +2025-10-23 17:33:20.698 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:33:30.706 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:33:30 + → module: 'TaskScheduler' +2025-10-23 17:33:30.706 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:33:40.730 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:33:40 + → module: 'TaskScheduler' +2025-10-23 17:33:40.730 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:33:50.739 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:33:50 + → module: 'TaskScheduler' +2025-10-23 17:33:50.739 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:34:00.759 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:34:00 + → module: 'TaskScheduler' +2025-10-23 17:34:00.759 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:34:10.767 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:34:10 + → module: 'TaskScheduler' +2025-10-23 17:34:10.767 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:34:20.794 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:34:20 + → module: 'TaskScheduler' +2025-10-23 17:34:20.794 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:34:30.803 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:34:30 + → module: 'TaskScheduler' +2025-10-23 17:34:30.803 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:34:40.822 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:34:40 + → module: 'TaskScheduler' +2025-10-23 17:34:40.822 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:34:50.831 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:34:50 + → module: 'TaskScheduler' +2025-10-23 17:34:50.831 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:35:00.863 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:35:00 + → module: 'TaskScheduler' +2025-10-23 17:35:00.863 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:35:00.871 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 17:35:00.880 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 17:35:00.880 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 17:35:00.880 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 17:35:00.882 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 17:35:00.882 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 17:35:00.898 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 17:35:00.914 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 17:35:00.915 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 17:35:00.916 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 09:27:18 + → module: 'NewsAPIClient' +2025-10-23 17:35:00.916 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 09:27:18 + → module: 'NewsAPIClient' +2025-10-23 17:35:00.916 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 17:35:01.386 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:35:01.413 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:35:01.436 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:35:01.778 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:35:01.780 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 17:35:01.781 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.86秒 + → module: 'NewsAPIClient' +2025-10-23 17:35:01.781 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 17:35:01.782 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 17:35:01.782 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 17:35:01.783 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 17:35:01.785 | DEBUG | rss_subscriptions:235 - 处理条目 1: 印尼巴东国立大学孔子学院揭牌 系苏门答腊岛首所孔院 + → module: 'NewsAPIClient' +2025-10-23 17:35:01.785 | DEBUG | rss_subscriptions:235 - 处理条目 2: 黑龙江前9个月优良天数比率93.9% “龙江蓝”成为常态 + → module: 'NewsAPIClient' +2025-10-23 17:35:01.785 | DEBUG | rss_subscriptions:235 - 处理条目 3: 黑龙江:“十四五”期间生态文明示范建设创建数量、转化模式“双突破” + → module: 'NewsAPIClient' +2025-10-23 17:35:01.808 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 17:35:01.810 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 17:35:01.811 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 3 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 17:35:01.831 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 3 + → total_inserted: 3 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 17:35:01.832 | INFO | rss_subscriptions:259 - 成功写入 3/3 条记录 + → module: 'NewsAPIClient' +2025-10-23 17:35:01.832 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 09:33:51 + → module: 'NewsAPIClient' +2025-10-23 17:35:01.832 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 09:33:51 + → module: 'NewsAPIClient' +2025-10-23 17:35:01.833 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.95秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 17:35:01.841 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 17:35:01.841 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 17:35:10.883 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:35:10 + → module: 'TaskScheduler' +2025-10-23 17:35:10.883 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:35:20.890 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:35:20 + → module: 'TaskScheduler' +2025-10-23 17:35:20.890 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:35:30.922 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:35:30 + → module: 'TaskScheduler' +2025-10-23 17:35:30.922 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:35:40.956 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:35:40 + → module: 'TaskScheduler' +2025-10-23 17:35:40.956 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:35:50.963 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:35:50 + → module: 'TaskScheduler' +2025-10-23 17:35:50.963 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:36:00.971 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:36:00 + → module: 'TaskScheduler' +2025-10-23 17:36:00.971 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:36:10.997 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:36:10 + → module: 'TaskScheduler' +2025-10-23 17:36:10.997 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:36:21.005 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:36:21 + → module: 'TaskScheduler' +2025-10-23 17:36:21.005 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:36:31.035 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:36:31 + → module: 'TaskScheduler' +2025-10-23 17:36:31.035 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:36:41.057 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:36:41 + → module: 'TaskScheduler' +2025-10-23 17:36:41.057 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:36:51.077 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:36:51 + → module: 'TaskScheduler' +2025-10-23 17:36:51.077 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:37:01.085 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:37:01 + → module: 'TaskScheduler' +2025-10-23 17:37:01.085 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:37:11.105 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:37:11 + → module: 'TaskScheduler' +2025-10-23 17:37:11.105 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:37:21.114 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:37:21 + → module: 'TaskScheduler' +2025-10-23 17:37:21.114 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:37:31.121 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:37:31 + → module: 'TaskScheduler' +2025-10-23 17:37:31.121 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:37:41.131 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:37:41 + → module: 'TaskScheduler' +2025-10-23 17:37:41.131 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:37:51.139 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:37:51 + → module: 'TaskScheduler' +2025-10-23 17:37:51.139 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:38:01.148 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:38:01 + → module: 'TaskScheduler' +2025-10-23 17:38:01.148 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:38:11.155 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:38:11 + → module: 'TaskScheduler' +2025-10-23 17:38:11.155 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:38:21.163 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:38:21 + → module: 'TaskScheduler' +2025-10-23 17:38:21.163 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:38:31.172 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:38:31 + → module: 'TaskScheduler' +2025-10-23 17:38:31.172 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:38:41.192 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:38:41 + → module: 'TaskScheduler' +2025-10-23 17:38:41.192 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:38:51.201 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:38:51 + → module: 'TaskScheduler' +2025-10-23 17:38:51.201 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:39:01.208 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:39:01 + → module: 'TaskScheduler' +2025-10-23 17:39:01.208 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:39:11.240 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:39:11 + → module: 'TaskScheduler' +2025-10-23 17:39:11.240 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:39:21.247 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:39:21 + → module: 'TaskScheduler' +2025-10-23 17:39:21.248 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:39:31.255 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:39:31 + → module: 'TaskScheduler' +2025-10-23 17:39:31.255 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:39:41.262 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:39:41 + → module: 'TaskScheduler' +2025-10-23 17:39:41.263 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:39:51.285 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:39:51 + → module: 'TaskScheduler' +2025-10-23 17:39:51.285 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:40:01.315 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:40:01 + → module: 'TaskScheduler' +2025-10-23 17:40:01.315 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:40:01.344 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 17:40:01.365 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 17:40:01.366 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 17:40:01.366 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 17:40:01.366 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 17:40:01.367 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 17:40:01.386 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 17:40:01.389 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 17:40:01.390 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 17:40:01.391 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 09:33:51 + → module: 'NewsAPIClient' +2025-10-23 17:40:01.391 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 09:33:51 + → module: 'NewsAPIClient' +2025-10-23 17:40:01.391 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 17:40:01.818 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:40:01.862 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:40:01.872 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:40:02.117 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:40:02.119 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 17:40:02.119 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.73秒 + → module: 'NewsAPIClient' +2025-10-23 17:40:02.119 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 17:40:02.120 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 17:40:02.121 | DEBUG | rss_subscriptions:235 - 处理条目 1: 外媒:欧盟正式通过对俄罗斯第19轮制裁 涉天然气行业 + → module: 'NewsAPIClient' +2025-10-23 17:40:02.140 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 17:40:02.141 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 17:40:02.143 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 17:40:02.164 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 17:40:02.167 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 17:40:02.167 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 17:40:02.168 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 17:40:02.170 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 09:36:07 + → module: 'NewsAPIClient' +2025-10-23 17:40:02.170 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 09:36:07 + → module: 'NewsAPIClient' +2025-10-23 17:40:02.171 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.80秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 17:40:02.212 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 17:40:02.212 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 17:40:11.368 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:40:11 + → module: 'TaskScheduler' +2025-10-23 17:40:11.368 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:40:21.390 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:40:21 + → module: 'TaskScheduler' +2025-10-23 17:40:21.390 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:40:31.399 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:40:31 + → module: 'TaskScheduler' +2025-10-23 17:40:31.399 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:40:41.407 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:40:41 + → module: 'TaskScheduler' +2025-10-23 17:40:41.407 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:40:51.414 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:40:51 + → module: 'TaskScheduler' +2025-10-23 17:40:51.414 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:41:01.423 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:41:01 + → module: 'TaskScheduler' +2025-10-23 17:41:01.423 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:41:11.431 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:41:11 + → module: 'TaskScheduler' +2025-10-23 17:41:11.431 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:41:21.439 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:41:21 + → module: 'TaskScheduler' +2025-10-23 17:41:21.439 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:41:31.471 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:41:31 + → module: 'TaskScheduler' +2025-10-23 17:41:31.471 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:41:41.479 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:41:41 + → module: 'TaskScheduler' +2025-10-23 17:41:41.479 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:41:51.504 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:41:51 + → module: 'TaskScheduler' +2025-10-23 17:41:51.504 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:42:01.512 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:42:01 + → module: 'TaskScheduler' +2025-10-23 17:42:01.512 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:42:11.519 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:42:11 + → module: 'TaskScheduler' +2025-10-23 17:42:11.519 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:42:21.527 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:42:21 + → module: 'TaskScheduler' +2025-10-23 17:42:21.527 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:42:31.599 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:42:31 + → module: 'TaskScheduler' +2025-10-23 17:42:31.599 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:42:41.606 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:42:41 + → module: 'TaskScheduler' +2025-10-23 17:42:41.606 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:42:51.615 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:42:51 + → module: 'TaskScheduler' +2025-10-23 17:42:51.615 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:43:01.624 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:43:01 + → module: 'TaskScheduler' +2025-10-23 17:43:01.624 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:43:11.652 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:43:11 + → module: 'TaskScheduler' +2025-10-23 17:43:11.652 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:43:21.682 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:43:21 + → module: 'TaskScheduler' +2025-10-23 17:43:21.682 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:43:31.711 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:43:31 + → module: 'TaskScheduler' +2025-10-23 17:43:31.711 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:43:41.743 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:43:41 + → module: 'TaskScheduler' +2025-10-23 17:43:41.743 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:43:51.752 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:43:51 + → module: 'TaskScheduler' +2025-10-23 17:43:51.752 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:44:01.759 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:44:01 + → module: 'TaskScheduler' +2025-10-23 17:44:01.760 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:44:11.767 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:44:11 + → module: 'TaskScheduler' +2025-10-23 17:44:11.767 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:44:21.792 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:44:21 + → module: 'TaskScheduler' +2025-10-23 17:44:21.792 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:44:31.819 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:44:31 + → module: 'TaskScheduler' +2025-10-23 17:44:31.820 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:44:41.828 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:44:41 + → module: 'TaskScheduler' +2025-10-23 17:44:41.828 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:44:51.860 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:44:51 + → module: 'TaskScheduler' +2025-10-23 17:44:51.860 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:45:01.885 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:45:01 + → module: 'TaskScheduler' +2025-10-23 17:45:01.885 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:45:01.893 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 17:45:01.918 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 17:45:01.919 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 17:45:01.919 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 17:45:01.919 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 17:45:01.919 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 17:45:01.923 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 17:45:01.927 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 17:45:01.927 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 17:45:01.929 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 09:36:07 + → module: 'NewsAPIClient' +2025-10-23 17:45:01.930 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 09:36:07 + → module: 'NewsAPIClient' +2025-10-23 17:45:01.930 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 17:45:02.360 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:45:02.375 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:45:02.397 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:45:02.663 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:45:02.665 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 17:45:02.666 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.74秒 + → module: 'NewsAPIClient' +2025-10-23 17:45:02.666 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 17:45:02.667 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 17:45:02.668 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 17:45:02.670 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 17:45:02.672 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 09:36:07 + → module: 'NewsAPIClient' +2025-10-23 17:45:02.672 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 09:36:07 + → module: 'NewsAPIClient' +2025-10-23 17:45:02.672 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.75秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 17:45:02.681 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 17:45:02.681 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 17:45:11.920 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:45:11 + → module: 'TaskScheduler' +2025-10-23 17:45:11.920 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:45:21.928 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:45:21 + → module: 'TaskScheduler' +2025-10-23 17:45:21.929 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:45:31.935 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:45:31 + → module: 'TaskScheduler' +2025-10-23 17:45:31.936 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:45:41.944 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:45:41 + → module: 'TaskScheduler' +2025-10-23 17:45:41.944 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:45:51.953 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:45:51 + → module: 'TaskScheduler' +2025-10-23 17:45:51.953 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:46:01.962 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:46:01 + → module: 'TaskScheduler' +2025-10-23 17:46:01.962 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:46:11.970 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:46:11 + → module: 'TaskScheduler' +2025-10-23 17:46:11.971 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:46:21.979 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:46:21 + → module: 'TaskScheduler' +2025-10-23 17:46:21.979 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:46:31.986 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:46:31 + → module: 'TaskScheduler' +2025-10-23 17:46:31.987 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:46:42.016 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:46:42 + → module: 'TaskScheduler' +2025-10-23 17:46:42.016 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:46:52.024 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:46:52 + → module: 'TaskScheduler' +2025-10-23 17:46:52.024 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:47:02.055 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:47:02 + → module: 'TaskScheduler' +2025-10-23 17:47:02.055 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:47:12.062 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:47:12 + → module: 'TaskScheduler' +2025-10-23 17:47:12.062 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:47:22.071 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:47:22 + → module: 'TaskScheduler' +2025-10-23 17:47:22.071 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:47:32.090 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:47:32 + → module: 'TaskScheduler' +2025-10-23 17:47:32.090 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:47:42.118 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:47:42 + → module: 'TaskScheduler' +2025-10-23 17:47:42.118 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:47:52.125 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:47:52 + → module: 'TaskScheduler' +2025-10-23 17:47:52.125 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:48:02.133 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:48:02 + → module: 'TaskScheduler' +2025-10-23 17:48:02.133 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:48:12.152 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:48:12 + → module: 'TaskScheduler' +2025-10-23 17:48:12.152 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:48:22.179 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:48:22 + → module: 'TaskScheduler' +2025-10-23 17:48:22.179 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:48:32.186 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:48:32 + → module: 'TaskScheduler' +2025-10-23 17:48:32.186 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:48:42.194 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:48:42 + → module: 'TaskScheduler' +2025-10-23 17:48:42.195 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:48:52.228 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:48:52 + → module: 'TaskScheduler' +2025-10-23 17:48:52.228 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:49:02.236 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:49:02 + → module: 'TaskScheduler' +2025-10-23 17:49:02.236 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:49:12.268 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:49:12 + → module: 'TaskScheduler' +2025-10-23 17:49:12.268 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:49:22.296 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:49:22 + → module: 'TaskScheduler' +2025-10-23 17:49:22.296 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:49:32.305 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:49:32 + → module: 'TaskScheduler' +2025-10-23 17:49:32.305 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:49:42.327 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:49:42 + → module: 'TaskScheduler' +2025-10-23 17:49:42.327 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:49:52.337 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:49:52 + → module: 'TaskScheduler' +2025-10-23 17:49:52.337 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:50:02.363 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:50:02 + → module: 'TaskScheduler' +2025-10-23 17:50:02.363 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:50:02.373 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 17:50:02.382 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 17:50:02.383 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 17:50:02.383 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 17:50:02.383 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 17:50:02.383 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 17:50:02.387 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 17:50:02.391 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 17:50:02.392 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 17:50:02.392 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 09:36:07 + → module: 'NewsAPIClient' +2025-10-23 17:50:02.394 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 09:36:07 + → module: 'NewsAPIClient' +2025-10-23 17:50:02.394 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 17:50:02.840 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:50:02.854 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:50:02.865 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:50:03.168 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:50:03.169 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 17:50:03.170 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.78秒 + → module: 'NewsAPIClient' +2025-10-23 17:50:03.170 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 17:50:03.171 | DEBUG | rss_subscriptions:235 - 处理条目 1: 换罐15分钟、续航4000公里 2025绿色能源发展大会展示LNG船舶能源换罐 + → module: 'NewsAPIClient' +2025-10-23 17:50:03.187 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 17:50:03.189 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 17:50:03.190 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 17:50:03.212 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 17:50:03.214 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 17:50:03.214 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 17:50:03.215 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 17:50:03.217 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 17:50:03.218 | DEBUG | rss_subscriptions:235 - 处理条目 1: “十五五”时期经济社会发展主要目标,一图速览! + → module: 'NewsAPIClient' +2025-10-23 17:50:03.218 | DEBUG | rss_subscriptions:235 - 处理条目 2: 换罐15分钟、续航4000公里 2025绿色能源发展大会展示LNG船舶能源换罐 + → module: 'NewsAPIClient' +2025-10-23 17:50:03.221 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 17:50:03.223 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 17:50:03.223 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 2 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 17:50:03.234 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 1 + → error_message: "Duplicate entry '换罐15分钟、续航4000公里 2025绿色能源发展大会å' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '换罐15分钟、续航4000公里 2025绿色能源发展大会展示LNG船舶能源换罐...', '文章链接': 'http://www.chinanews.com/cj/2025/10-23/10503331.shtml...', '文章摘要': '中新网宜昌10月23日电 10月22日至24日,2025绿色能源发展大会暨智能船舶发展大会在湖北省宜昌市召开。其间,由中车长江集... +2025-10-23 17:50:03.235 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 2 + → total_inserted: 1 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-23 17:50:03.236 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '换罐15分钟、续航4000公里 2025绿色能源发展大会å' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '换罐15分钟、续航4000公里 2025绿色能源发展大会å' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题'... +2025-10-23 17:50:03.237 | INFO | rss_subscriptions:259 - 成功写入 1/2 条记录 + → module: 'NewsAPIClient' +2025-10-23 17:50:03.237 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 09:43:23 + → module: 'NewsAPIClient' +2025-10-23 17:50:03.238 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 09:43:23 + → module: 'NewsAPIClient' +2025-10-23 17:50:03.238 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.86秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 17:50:03.249 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 17:50:03.249 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 17:50:12.385 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:50:12 + → module: 'TaskScheduler' +2025-10-23 17:50:12.385 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:50:22.393 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:50:22 + → module: 'TaskScheduler' +2025-10-23 17:50:22.393 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:50:32.401 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:50:32 + → module: 'TaskScheduler' +2025-10-23 17:50:32.401 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:50:42.428 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:50:42 + → module: 'TaskScheduler' +2025-10-23 17:50:42.428 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:50:52.440 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:50:52 + → module: 'TaskScheduler' +2025-10-23 17:50:52.440 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:51:02.472 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:51:02 + → module: 'TaskScheduler' +2025-10-23 17:51:02.472 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:51:12.479 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:51:12 + → module: 'TaskScheduler' +2025-10-23 17:51:12.479 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:51:22.498 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:51:22 + → module: 'TaskScheduler' +2025-10-23 17:51:22.498 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:51:32.516 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:51:32 + → module: 'TaskScheduler' +2025-10-23 17:51:32.516 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:51:42.549 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:51:42 + → module: 'TaskScheduler' +2025-10-23 17:51:42.549 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:51:52.577 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:51:52 + → module: 'TaskScheduler' +2025-10-23 17:51:52.577 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:52:02.600 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:52:02 + → module: 'TaskScheduler' +2025-10-23 17:52:02.600 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:52:12.608 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:52:12 + → module: 'TaskScheduler' +2025-10-23 17:52:12.608 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:52:22.629 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:52:22 + → module: 'TaskScheduler' +2025-10-23 17:52:22.629 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:52:32.639 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:52:32 + → module: 'TaskScheduler' +2025-10-23 17:52:32.639 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:52:42.668 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:52:42 + → module: 'TaskScheduler' +2025-10-23 17:52:42.668 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:52:52.676 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:52:52 + → module: 'TaskScheduler' +2025-10-23 17:52:52.676 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:53:02.684 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:53:02 + → module: 'TaskScheduler' +2025-10-23 17:53:02.684 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:53:12.691 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:53:12 + → module: 'TaskScheduler' +2025-10-23 17:53:12.691 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:53:22.700 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:53:22 + → module: 'TaskScheduler' +2025-10-23 17:53:22.700 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:53:32.709 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:53:32 + → module: 'TaskScheduler' +2025-10-23 17:53:32.709 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:53:42.715 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:53:42 + → module: 'TaskScheduler' +2025-10-23 17:53:42.715 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:53:52.742 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:53:52 + → module: 'TaskScheduler' +2025-10-23 17:53:52.742 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:54:02.750 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:54:02 + → module: 'TaskScheduler' +2025-10-23 17:54:02.750 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:54:12.756 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:54:12 + → module: 'TaskScheduler' +2025-10-23 17:54:12.756 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:54:22.764 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:54:22 + → module: 'TaskScheduler' +2025-10-23 17:54:22.764 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:54:32.772 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:54:32 + → module: 'TaskScheduler' +2025-10-23 17:54:32.772 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:54:42.800 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:54:42 + → module: 'TaskScheduler' +2025-10-23 17:54:42.800 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:54:52.809 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:54:52 + → module: 'TaskScheduler' +2025-10-23 17:54:52.809 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:55:02.817 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:55:02 + → module: 'TaskScheduler' +2025-10-23 17:55:02.817 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:55:02.841 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 17:55:02.848 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 17:55:02.848 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 17:55:02.848 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 17:55:02.848 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 17:55:02.850 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 17:55:02.852 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 17:55:02.869 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 17:55:02.869 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 17:55:02.870 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 09:43:23 + → module: 'NewsAPIClient' +2025-10-23 17:55:02.871 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 09:43:23 + → module: 'NewsAPIClient' +2025-10-23 17:55:02.871 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 17:55:03.271 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:55:03.291 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:55:03.304 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:55:03.619 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 17:55:03.620 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 17:55:03.621 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.75秒 + → module: 'NewsAPIClient' +2025-10-23 17:55:03.621 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 17:55:03.622 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 17:55:03.622 | DEBUG | rss_subscriptions:235 - 处理条目 1: 国家金融监管总局肖远企:AI在金融领域作用仍是辅助性的 + → module: 'NewsAPIClient' +2025-10-23 17:55:03.625 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 17:55:03.627 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 17:55:03.628 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 17:55:03.635 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 17:55:03.637 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 17:55:03.637 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 17:55:03.638 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 17:55:03.639 | DEBUG | rss_subscriptions:235 - 处理条目 1: 全国人大常委会法工委54个基层立法联系点已征求意见66000多条 + → module: 'NewsAPIClient' +2025-10-23 17:55:03.639 | DEBUG | rss_subscriptions:235 - 处理条目 2: 国家金融监管总局肖远企:AI在金融领域作用仍是辅助性的 + → module: 'NewsAPIClient' +2025-10-23 17:55:03.639 | DEBUG | rss_subscriptions:235 - 处理条目 3: 赏红正当时!全国赏红叶地图出炉 十大观赏地带你体验不同秋色 + → module: 'NewsAPIClient' +2025-10-23 17:55:03.639 | DEBUG | rss_subscriptions:235 - 处理条目 4: 全国赏红叶地图出炉 十大观赏地带你体验不同秋色 + → module: 'NewsAPIClient' +2025-10-23 17:55:03.662 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 17:55:03.663 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 17:55:03.664 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 4 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 17:55:03.673 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 1 + → error_message: "Duplicate entry '国家金融监管总局肖远企:AI在金融领域作用仍æ\x98' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '国家金融监管总局肖远企:AI在金融领域作用仍是辅助性的...', '文章链接': 'http://www.chinanews.com/cj/2025/10-23/10503335.shtml...', '文章摘要': '中新网上海10月23日电 (尹倩芸 高志苗)国家金融监督管理总局副局长肖远企23日在2025外滩年会上表示,目前AI在金融领域的应用仍处于早期阶段,其作用... +2025-10-23 17:55:03.683 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 4 + → total_inserted: 3 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-23 17:55:03.685 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '国家金融监管总局肖远企:AI在金融领域作用仍æ\x98' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '国家金融监管总局肖远企:AI在金融领域作用仍æ\x98' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '... +2025-10-23 17:55:03.686 | INFO | rss_subscriptions:259 - 成功写入 3/4 条记录 + → module: 'NewsAPIClient' +2025-10-23 17:55:03.687 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 09:49:00 + → module: 'NewsAPIClient' +2025-10-23 17:55:03.687 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 09:49:00 + → module: 'NewsAPIClient' +2025-10-23 17:55:03.687 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.84秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 17:55:03.695 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 17:55:03.695 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 17:55:12.850 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:55:12 + → module: 'TaskScheduler' +2025-10-23 17:55:12.850 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:55:22.879 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:55:22 + → module: 'TaskScheduler' +2025-10-23 17:55:22.879 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:55:32.888 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:55:32 + → module: 'TaskScheduler' +2025-10-23 17:55:32.888 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:55:42.896 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:55:42 + → module: 'TaskScheduler' +2025-10-23 17:55:42.896 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:55:52.921 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:55:52 + → module: 'TaskScheduler' +2025-10-23 17:55:52.921 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:56:02.928 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:56:02 + → module: 'TaskScheduler' +2025-10-23 17:56:02.928 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:56:12.950 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:56:12 + → module: 'TaskScheduler' +2025-10-23 17:56:12.950 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:56:22.958 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:56:22 + → module: 'TaskScheduler' +2025-10-23 17:56:22.958 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:56:32.992 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:56:32 + → module: 'TaskScheduler' +2025-10-23 17:56:32.992 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:56:43.000 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:56:43 + → module: 'TaskScheduler' +2025-10-23 17:56:43.000 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:56:53.008 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:56:53 + → module: 'TaskScheduler' +2025-10-23 17:56:53.008 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:57:03.038 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:57:03 + → module: 'TaskScheduler' +2025-10-23 17:57:03.039 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:57:13.047 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:57:13 + → module: 'TaskScheduler' +2025-10-23 17:57:13.048 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:57:23.056 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:57:23 + → module: 'TaskScheduler' +2025-10-23 17:57:23.056 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:57:33.064 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:57:33 + → module: 'TaskScheduler' +2025-10-23 17:57:33.064 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:57:43.083 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:57:43 + → module: 'TaskScheduler' +2025-10-23 17:57:43.083 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:57:53.115 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:57:53 + → module: 'TaskScheduler' +2025-10-23 17:57:53.115 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:58:03.136 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:58:03 + → module: 'TaskScheduler' +2025-10-23 17:58:03.136 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:58:13.145 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:58:13 + → module: 'TaskScheduler' +2025-10-23 17:58:13.145 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:58:23.153 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:58:23 + → module: 'TaskScheduler' +2025-10-23 17:58:23.153 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:58:33.185 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:58:33 + → module: 'TaskScheduler' +2025-10-23 17:58:33.185 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:58:43.211 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:58:43 + → module: 'TaskScheduler' +2025-10-23 17:58:43.211 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:58:53.219 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:58:53 + → module: 'TaskScheduler' +2025-10-23 17:58:53.219 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:59:03.251 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:59:03 + → module: 'TaskScheduler' +2025-10-23 17:59:03.251 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:59:13.258 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:59:13 + → module: 'TaskScheduler' +2025-10-23 17:59:13.258 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:59:23.266 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:59:23 + → module: 'TaskScheduler' +2025-10-23 17:59:23.266 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:59:33.290 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:59:33 + → module: 'TaskScheduler' +2025-10-23 17:59:33.290 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:59:43.298 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:59:43 + → module: 'TaskScheduler' +2025-10-23 17:59:43.298 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 17:59:53.306 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 17:59:53 + → module: 'TaskScheduler' +2025-10-23 17:59:53.306 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:00:03.334 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:00:03 + → module: 'TaskScheduler' +2025-10-23 18:00:03.334 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:00:03.343 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:00:03.361 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 18:00:03.362 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:00:03.362 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 18:00:03.362 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 18:00:03.362 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 18:00:03.367 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 18:00:03.384 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 18:00:03.385 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 18:00:03.386 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 09:49:00 + → module: 'NewsAPIClient' +2025-10-23 18:00:03.386 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 09:49:00 + → module: 'NewsAPIClient' +2025-10-23 18:00:03.386 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 18:00:03.776 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:00:03.788 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:00:03.817 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:00:04.084 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:00:04.085 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 18:00:04.086 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.70秒 + → module: 'NewsAPIClient' +2025-10-23 18:00:04.086 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 18:00:04.087 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 18:00:04.088 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 18:00:04.089 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 18:00:04.090 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 09:49:00 + → module: 'NewsAPIClient' +2025-10-23 18:00:04.091 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 09:49:00 + → module: 'NewsAPIClient' +2025-10-23 18:00:04.091 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.73秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 18:00:04.117 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 18:00:04.118 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:00:13.364 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:00:13 + → module: 'TaskScheduler' +2025-10-23 18:00:13.364 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:00:23.382 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:00:23 + → module: 'TaskScheduler' +2025-10-23 18:00:23.382 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:00:33.407 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:00:33 + → module: 'TaskScheduler' +2025-10-23 18:00:33.407 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:00:43.435 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:00:43 + → module: 'TaskScheduler' +2025-10-23 18:00:43.435 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:00:53.442 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:00:53 + → module: 'TaskScheduler' +2025-10-23 18:00:53.442 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:01:03.451 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:01:03 + → module: 'TaskScheduler' +2025-10-23 18:01:03.451 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:01:13.477 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:01:13 + → module: 'TaskScheduler' +2025-10-23 18:01:13.477 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:01:23.485 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:01:23 + → module: 'TaskScheduler' +2025-10-23 18:01:23.485 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:01:33.493 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:01:33 + → module: 'TaskScheduler' +2025-10-23 18:01:33.493 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:01:43.515 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:01:43 + → module: 'TaskScheduler' +2025-10-23 18:01:43.515 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:01:53.522 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:01:53 + → module: 'TaskScheduler' +2025-10-23 18:01:53.522 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:02:03.531 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:02:03 + → module: 'TaskScheduler' +2025-10-23 18:02:03.531 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:02:13.557 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:02:13 + → module: 'TaskScheduler' +2025-10-23 18:02:13.557 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:02:23.591 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:02:23 + → module: 'TaskScheduler' +2025-10-23 18:02:23.592 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:02:33.600 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:02:33 + → module: 'TaskScheduler' +2025-10-23 18:02:33.600 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:02:43.618 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:02:43 + → module: 'TaskScheduler' +2025-10-23 18:02:43.618 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:02:53.627 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:02:53 + → module: 'TaskScheduler' +2025-10-23 18:02:53.627 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:03:03.645 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:03:03 + → module: 'TaskScheduler' +2025-10-23 18:03:03.645 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:03:13.672 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:03:13 + → module: 'TaskScheduler' +2025-10-23 18:03:13.673 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:03:23.681 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:03:23 + → module: 'TaskScheduler' +2025-10-23 18:03:23.681 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:03:33.714 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:03:33 + → module: 'TaskScheduler' +2025-10-23 18:03:33.714 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:03:43.721 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:03:43 + → module: 'TaskScheduler' +2025-10-23 18:03:43.721 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:03:53.743 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:03:53 + → module: 'TaskScheduler' +2025-10-23 18:03:53.743 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:04:03.767 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:04:03 + → module: 'TaskScheduler' +2025-10-23 18:04:03.767 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:04:13.777 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:04:13 + → module: 'TaskScheduler' +2025-10-23 18:04:13.777 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:04:23.803 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:04:23 + → module: 'TaskScheduler' +2025-10-23 18:04:23.803 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:04:33.822 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:04:33 + → module: 'TaskScheduler' +2025-10-23 18:04:33.822 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:04:43.832 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:04:43 + → module: 'TaskScheduler' +2025-10-23 18:04:43.832 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:04:53.840 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:04:53 + → module: 'TaskScheduler' +2025-10-23 18:04:53.840 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:05:03.849 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:05:03 + → module: 'TaskScheduler' +2025-10-23 18:05:03.849 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:05:03.857 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:05:03.866 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 18:05:03.866 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:05:03.866 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 18:05:03.866 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 18:05:03.867 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 18:05:03.893 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 18:05:03.898 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 18:05:03.898 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 18:05:03.899 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 09:49:00 + → module: 'NewsAPIClient' +2025-10-23 18:05:03.899 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 09:49:00 + → module: 'NewsAPIClient' +2025-10-23 18:05:03.900 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 18:05:04.408 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:05:04.420 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:05:04.436 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:05:04.783 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:05:04.785 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 18:05:04.786 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.89秒 + → module: 'NewsAPIClient' +2025-10-23 18:05:04.786 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 18:05:04.787 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 18:05:04.788 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 18:05:04.789 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 18:05:04.791 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 09:49:00 + → module: 'NewsAPIClient' +2025-10-23 18:05:04.792 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 09:49:00 + → module: 'NewsAPIClient' +2025-10-23 18:05:04.792 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.93秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 18:05:04.813 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 18:05:04.813 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:05:13.868 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:05:13 + → module: 'TaskScheduler' +2025-10-23 18:05:13.868 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:05:23.875 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:05:23 + → module: 'TaskScheduler' +2025-10-23 18:05:23.875 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:05:33.883 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:05:33 + → module: 'TaskScheduler' +2025-10-23 18:05:33.883 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:05:43.891 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:05:43 + → module: 'TaskScheduler' +2025-10-23 18:05:43.891 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:05:53.921 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:05:53 + → module: 'TaskScheduler' +2025-10-23 18:05:53.921 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:06:03.929 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:06:03 + → module: 'TaskScheduler' +2025-10-23 18:06:03.930 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:06:13.951 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:06:13 + → module: 'TaskScheduler' +2025-10-23 18:06:13.951 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:06:23.959 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:06:23 + → module: 'TaskScheduler' +2025-10-23 18:06:23.960 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:06:33.968 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:06:33 + → module: 'TaskScheduler' +2025-10-23 18:06:33.968 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:06:43.996 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:06:43 + → module: 'TaskScheduler' +2025-10-23 18:06:43.996 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:06:54.004 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:06:54 + → module: 'TaskScheduler' +2025-10-23 18:06:54.004 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:07:04.013 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:07:04 + → module: 'TaskScheduler' +2025-10-23 18:07:04.013 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:07:14.034 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:07:14 + → module: 'TaskScheduler' +2025-10-23 18:07:14.034 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:07:24.043 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:07:24 + → module: 'TaskScheduler' +2025-10-23 18:07:24.043 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:07:34.075 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:07:34 + → module: 'TaskScheduler' +2025-10-23 18:07:34.075 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:07:44.108 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:07:44 + → module: 'TaskScheduler' +2025-10-23 18:07:44.108 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:07:44.115 | INFO | main:87 - 小时任务统计 + → module: 'Main' + → 总任务数: 12 + → 成功: 12 + → 失败: 0 +2025-10-23 18:07:54.117 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:07:54 + → module: 'TaskScheduler' +2025-10-23 18:07:54.117 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:08:04.135 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:08:04 + → module: 'TaskScheduler' +2025-10-23 18:08:04.135 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:08:14.160 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:08:14 + → module: 'TaskScheduler' +2025-10-23 18:08:14.160 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:08:24.167 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:08:24 + → module: 'TaskScheduler' +2025-10-23 18:08:24.167 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:08:34.199 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:08:34 + → module: 'TaskScheduler' +2025-10-23 18:08:34.199 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:08:44.233 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:08:44 + → module: 'TaskScheduler' +2025-10-23 18:08:44.233 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:08:54.241 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:08:54 + → module: 'TaskScheduler' +2025-10-23 18:08:54.241 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:09:04.249 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:09:04 + → module: 'TaskScheduler' +2025-10-23 18:09:04.249 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:09:14.257 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:09:14 + → module: 'TaskScheduler' +2025-10-23 18:09:14.257 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:09:24.282 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:09:24 + → module: 'TaskScheduler' +2025-10-23 18:09:24.282 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:09:34.289 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:09:34 + → module: 'TaskScheduler' +2025-10-23 18:09:34.289 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:09:44.296 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:09:44 + → module: 'TaskScheduler' +2025-10-23 18:09:44.296 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:09:54.304 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:09:54 + → module: 'TaskScheduler' +2025-10-23 18:09:54.305 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:10:04.331 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:10:04 + → module: 'TaskScheduler' +2025-10-23 18:10:04.331 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:10:04.362 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:10:04.383 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 18:10:04.383 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:10:04.385 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 18:10:04.385 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 18:10:04.385 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 18:10:04.389 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 18:10:04.394 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 18:10:04.394 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 18:10:04.395 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 09:49:00 + → module: 'NewsAPIClient' +2025-10-23 18:10:04.395 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 09:49:00 + → module: 'NewsAPIClient' +2025-10-23 18:10:04.395 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 18:10:04.796 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:10:04.809 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:10:04.846 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:10:05.090 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:10:05.093 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 18:10:05.093 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.70秒 + → module: 'NewsAPIClient' +2025-10-23 18:10:05.093 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 18:10:05.094 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 18:10:05.094 | DEBUG | rss_subscriptions:235 - 处理条目 1: 诺奖得主警告:美国经济“表强实危”,人工智能繁荣难掩整体停滞 + → module: 'NewsAPIClient' +2025-10-23 18:10:05.114 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 18:10:05.116 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 18:10:05.117 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 18:10:05.124 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 18:10:05.124 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 18:10:05.126 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 18:10:05.126 | DEBUG | rss_subscriptions:235 - 处理条目 1: 成都国际数字文创生态伙伴大会聚全球资源筑产业新高地 + → module: 'NewsAPIClient' +2025-10-23 18:10:05.129 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 18:10:05.130 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 18:10:05.131 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 18:10:05.138 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 18:10:05.139 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 18:10:05.139 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 18:10:05.141 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 10:04:49 + → module: 'NewsAPIClient' +2025-10-23 18:10:05.141 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 10:04:49 + → module: 'NewsAPIClient' +2025-10-23 18:10:05.142 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.76秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 18:10:05.151 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 18:10:05.151 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:10:14.386 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:10:14 + → module: 'TaskScheduler' +2025-10-23 18:10:14.386 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:10:24.393 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:10:24 + → module: 'TaskScheduler' +2025-10-23 18:10:24.393 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:10:34.401 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:10:34 + → module: 'TaskScheduler' +2025-10-23 18:10:34.401 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:10:44.423 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:10:44 + → module: 'TaskScheduler' +2025-10-23 18:10:44.423 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:10:54.431 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:10:54 + → module: 'TaskScheduler' +2025-10-23 18:10:54.431 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:11:04.439 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:11:04 + → module: 'TaskScheduler' +2025-10-23 18:11:04.439 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:11:14.446 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:11:14 + → module: 'TaskScheduler' +2025-10-23 18:11:14.446 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:11:24.454 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:11:24 + → module: 'TaskScheduler' +2025-10-23 18:11:24.454 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:11:34.462 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:11:34 + → module: 'TaskScheduler' +2025-10-23 18:11:34.462 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:11:44.494 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:11:44 + → module: 'TaskScheduler' +2025-10-23 18:11:44.494 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:11:54.517 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:11:54 + → module: 'TaskScheduler' +2025-10-23 18:11:54.517 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:12:04.525 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:12:04 + → module: 'TaskScheduler' +2025-10-23 18:12:04.525 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:12:14.551 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:12:14 + → module: 'TaskScheduler' +2025-10-23 18:12:14.551 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:12:24.560 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:12:24 + → module: 'TaskScheduler' +2025-10-23 18:12:24.560 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:12:34.568 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:12:34 + → module: 'TaskScheduler' +2025-10-23 18:12:34.568 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:12:44.576 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:12:44 + → module: 'TaskScheduler' +2025-10-23 18:12:44.576 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:12:54.583 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:12:54 + → module: 'TaskScheduler' +2025-10-23 18:12:54.583 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:13:04.591 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:13:04 + → module: 'TaskScheduler' +2025-10-23 18:13:04.591 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:13:14.612 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:13:14 + → module: 'TaskScheduler' +2025-10-23 18:13:14.612 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:13:24.620 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:13:24 + → module: 'TaskScheduler' +2025-10-23 18:13:24.620 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:13:34.628 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:13:34 + → module: 'TaskScheduler' +2025-10-23 18:13:34.628 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:13:44.636 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:13:44 + → module: 'TaskScheduler' +2025-10-23 18:13:44.636 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:13:54.645 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:13:54 + → module: 'TaskScheduler' +2025-10-23 18:13:54.645 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:14:04.652 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:14:04 + → module: 'TaskScheduler' +2025-10-23 18:14:04.652 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:14:14.661 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:14:14 + → module: 'TaskScheduler' +2025-10-23 18:14:14.661 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:14:24.669 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:14:24 + → module: 'TaskScheduler' +2025-10-23 18:14:24.669 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:14:34.677 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:14:34 + → module: 'TaskScheduler' +2025-10-23 18:14:34.677 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:14:44.685 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:14:44 + → module: 'TaskScheduler' +2025-10-23 18:14:44.685 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:14:54.693 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:14:54 + → module: 'TaskScheduler' +2025-10-23 18:14:54.693 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:15:04.701 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:15:04 + → module: 'TaskScheduler' +2025-10-23 18:15:04.701 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:15:04.709 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:15:04.761 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 18:15:04.761 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:15:04.761 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 18:15:04.762 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 18:15:04.762 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 18:15:04.783 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 18:15:04.786 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 18:15:04.787 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 18:15:04.787 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 10:04:49 + → module: 'NewsAPIClient' +2025-10-23 18:15:04.788 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 10:04:49 + → module: 'NewsAPIClient' +2025-10-23 18:15:04.788 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 18:15:05.215 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:15:05.229 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:15:05.243 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:15:05.610 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:15:05.612 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 18:15:05.612 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.82秒 + → module: 'NewsAPIClient' +2025-10-23 18:15:05.613 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 18:15:05.614 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 18:15:05.614 | DEBUG | rss_subscriptions:235 - 处理条目 1: 二十届四中全会公报极简版,来了! + → module: 'NewsAPIClient' +2025-10-23 18:15:05.614 | DEBUG | rss_subscriptions:235 - 处理条目 2: 受权发布丨中国共产党中央军事委员会副主席张升民简历 + → module: 'NewsAPIClient' +2025-10-23 18:15:05.614 | DEBUG | rss_subscriptions:235 - 处理条目 3: 二十届四中全会公报,重点来了 + → module: 'NewsAPIClient' +2025-10-23 18:15:05.617 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 18:15:05.618 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 18:15:05.619 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 3 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 18:15:05.645 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 3 + → total_inserted: 3 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 18:15:05.645 | INFO | rss_subscriptions:259 - 成功写入 3/3 条记录 + → module: 'NewsAPIClient' +2025-10-23 18:15:05.646 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 18:15:05.648 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 18:15:05.648 | DEBUG | rss_subscriptions:235 - 处理条目 1: 受权发布丨中国共产党中央军事委员会副主席张升民简历 + → module: 'NewsAPIClient' +2025-10-23 18:15:05.649 | DEBUG | rss_subscriptions:235 - 处理条目 2: 二十届四中全会公报,重点来了 + → module: 'NewsAPIClient' +2025-10-23 18:15:05.651 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 18:15:05.653 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 18:15:05.653 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 2 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 18:15:05.659 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 0 + → error_message: "Duplicate entry '受权发布丨中国共产党中央军事委员会副主席张å' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '受权发布丨中国共产党中央军事委员会副主席张升民简历...', '文章链接': 'http://www.chinanews.com/gn/2025/10-23/10503342.shtml...', '文章摘要': '新华社北京10月23日电...', '发布时间': '2025-10-23 10:06:57...', '来源URL': 'https://www.china... +2025-10-23 18:15:05.662 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 1 + → error_message: "Duplicate entry '二十届四中全会公报,重点来了-2025-10-23 10:06:03' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '二十届四中全会公报,重点来了...', '文章链接': 'http://www.chinanews.com/gn/2025/10-23/10503343.shtml...', '文章摘要': '二十届四中全会...', '发布时间': '2025-10-23 10:06:03...', '来源URL': 'https://www.chinanews.com.cn/rss/... +2025-10-23 18:15:05.663 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 2 + → total_inserted: 0 + → total_duplicates: 2 + → total_failed: 0 + → failed_records_count: 2 +2025-10-23 18:15:05.663 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '受权发布丨中国共产党中央军事委员会副主席张å' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 1, 'type': 'du... + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '受权发布丨中国共产党中央军事委员会副主席张å' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '受权发布丨... +2025-10-23 18:15:05.664 | INFO | rss_subscriptions:259 - 成功写入 0/2 条记录 + → module: 'NewsAPIClient' +2025-10-23 18:15:05.665 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 10:12:43 + → module: 'NewsAPIClient' +2025-10-23 18:15:05.665 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 10:12:43 + → module: 'NewsAPIClient' +2025-10-23 18:15:05.665 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.90秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 18:15:05.674 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 18:15:05.674 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:15:14.764 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:15:14 + → module: 'TaskScheduler' +2025-10-23 18:15:14.764 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:15:24.771 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:15:24 + → module: 'TaskScheduler' +2025-10-23 18:15:24.771 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:15:34.779 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:15:34 + → module: 'TaskScheduler' +2025-10-23 18:15:34.779 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:15:44.788 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:15:44 + → module: 'TaskScheduler' +2025-10-23 18:15:44.788 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:15:54.797 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:15:54 + → module: 'TaskScheduler' +2025-10-23 18:15:54.797 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:16:04.804 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:16:04 + → module: 'TaskScheduler' +2025-10-23 18:16:04.804 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:16:14.811 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:16:14 + → module: 'TaskScheduler' +2025-10-23 18:16:14.811 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:16:24.830 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:16:24 + → module: 'TaskScheduler' +2025-10-23 18:16:24.830 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:16:34.838 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:16:34 + → module: 'TaskScheduler' +2025-10-23 18:16:34.838 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:16:44.867 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:16:44 + → module: 'TaskScheduler' +2025-10-23 18:16:44.867 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:16:54.876 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:16:54 + → module: 'TaskScheduler' +2025-10-23 18:16:54.876 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:17:04.885 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:17:04 + → module: 'TaskScheduler' +2025-10-23 18:17:04.885 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:17:14.913 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:17:14 + → module: 'TaskScheduler' +2025-10-23 18:17:14.913 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:17:24.946 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:17:24 + → module: 'TaskScheduler' +2025-10-23 18:17:24.946 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:17:34.954 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:17:34 + → module: 'TaskScheduler' +2025-10-23 18:17:34.954 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:17:44.975 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:17:44 + → module: 'TaskScheduler' +2025-10-23 18:17:44.975 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:17:55.006 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:17:55 + → module: 'TaskScheduler' +2025-10-23 18:17:55.006 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:18:05.013 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:18:05 + → module: 'TaskScheduler' +2025-10-23 18:18:05.014 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:18:15.046 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:18:15 + → module: 'TaskScheduler' +2025-10-23 18:18:15.046 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:18:25.056 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:18:25 + → module: 'TaskScheduler' +2025-10-23 18:18:25.056 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:18:35.065 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:18:35 + → module: 'TaskScheduler' +2025-10-23 18:18:35.065 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:18:45.074 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:18:45 + → module: 'TaskScheduler' +2025-10-23 18:18:45.074 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:18:55.082 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:18:55 + → module: 'TaskScheduler' +2025-10-23 18:18:55.083 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:19:05.101 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:19:05 + → module: 'TaskScheduler' +2025-10-23 18:19:05.101 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:19:15.123 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:19:15 + → module: 'TaskScheduler' +2025-10-23 18:19:15.123 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:19:25.131 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:19:25 + → module: 'TaskScheduler' +2025-10-23 18:19:25.131 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:19:35.138 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:19:35 + → module: 'TaskScheduler' +2025-10-23 18:19:35.138 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:19:45.146 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:19:45 + → module: 'TaskScheduler' +2025-10-23 18:19:45.146 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:19:55.176 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:19:55 + → module: 'TaskScheduler' +2025-10-23 18:19:55.176 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:20:05.183 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:20:05 + → module: 'TaskScheduler' +2025-10-23 18:20:05.184 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:20:05.206 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:20:05.218 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 18:20:05.218 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:20:05.218 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 18:20:05.218 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 18:20:05.220 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 18:20:05.223 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 18:20:05.226 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 18:20:05.226 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 18:20:05.228 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 10:12:43 + → module: 'NewsAPIClient' +2025-10-23 18:20:05.228 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 10:12:43 + → module: 'NewsAPIClient' +2025-10-23 18:20:05.228 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 18:20:05.620 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:20:05.682 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:20:05.697 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:20:05.942 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:20:05.945 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 18:20:05.945 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.72秒 + → module: 'NewsAPIClient' +2025-10-23 18:20:05.945 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 18:20:05.946 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 18:20:05.947 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 18:20:05.947 | DEBUG | rss_subscriptions:235 - 处理条目 1: 十四届全国人大常委会第十八次会议相关法律案看点前瞻 + → module: 'NewsAPIClient' +2025-10-23 18:20:05.951 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 18:20:05.952 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 18:20:05.953 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 18:20:05.974 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 18:20:05.974 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 18:20:05.974 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 18:20:05.976 | DEBUG | rss_subscriptions:235 - 处理条目 1: 十四届全国人大常委会第十八次会议相关法律案看点前瞻 + → module: 'NewsAPIClient' +2025-10-23 18:20:05.977 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 18:20:05.980 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 18:20:05.981 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 18:20:05.985 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 0 + → error_message: "Duplicate entry '十四届全国人大常委会第十八次会议相关法律案ç' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '十四届全国人大常委会第十八次会议相关法律案看点前瞻...', '文章链接': 'http://www.chinanews.com/gn/2025/10-23/10503350.shtml...', '文章摘要': '新华社北京10月23日电 题:十四届全国人大常委会第十八次会议相关法律案看点前瞻...', '发布时间': '2025-10-23 10:15:39...',... +2025-10-23 18:20:05.985 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 0 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-23 18:20:05.986 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '十四届全国人大常委会第十八次会议相关法律案ç' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '十四届全国人大常委会第十八次会议相关法律案ç' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '十四届全国... +2025-10-23 18:20:05.986 | INFO | rss_subscriptions:259 - 成功写入 0/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 18:20:05.987 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 10:15:39 + → module: 'NewsAPIClient' +2025-10-23 18:20:05.987 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 10:15:39 + → module: 'NewsAPIClient' +2025-10-23 18:20:05.987 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.77秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 18:20:05.997 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 18:20:05.998 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:20:15.220 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:20:15 + → module: 'TaskScheduler' +2025-10-23 18:20:15.220 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:20:25.252 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:20:25 + → module: 'TaskScheduler' +2025-10-23 18:20:25.252 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:20:35.259 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:20:35 + → module: 'TaskScheduler' +2025-10-23 18:20:35.259 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:20:45.267 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:20:45 + → module: 'TaskScheduler' +2025-10-23 18:20:45.267 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:20:55.274 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:20:55 + → module: 'TaskScheduler' +2025-10-23 18:20:55.274 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:21:05.300 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:21:05 + → module: 'TaskScheduler' +2025-10-23 18:21:05.300 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:21:15.324 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:21:15 + → module: 'TaskScheduler' +2025-10-23 18:21:15.324 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:21:25.333 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:21:25 + → module: 'TaskScheduler' +2025-10-23 18:21:25.333 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:21:35.340 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:21:35 + → module: 'TaskScheduler' +2025-10-23 18:21:35.340 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:21:45.348 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:21:45 + → module: 'TaskScheduler' +2025-10-23 18:21:45.348 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:21:55.377 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:21:55 + → module: 'TaskScheduler' +2025-10-23 18:21:55.377 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:22:05.386 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:22:05 + → module: 'TaskScheduler' +2025-10-23 18:22:05.386 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:22:15.405 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:22:15 + → module: 'TaskScheduler' +2025-10-23 18:22:15.405 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:22:25.413 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:22:25 + → module: 'TaskScheduler' +2025-10-23 18:22:25.413 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:22:35.421 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:22:35 + → module: 'TaskScheduler' +2025-10-23 18:22:35.422 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:22:45.447 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:22:45 + → module: 'TaskScheduler' +2025-10-23 18:22:45.447 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:22:55.469 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:22:55 + → module: 'TaskScheduler' +2025-10-23 18:22:55.469 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:23:05.486 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:23:05 + → module: 'TaskScheduler' +2025-10-23 18:23:05.486 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:23:15.493 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:23:15 + → module: 'TaskScheduler' +2025-10-23 18:23:15.493 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:23:25.513 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:23:25 + → module: 'TaskScheduler' +2025-10-23 18:23:25.513 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:23:35.540 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:23:35 + → module: 'TaskScheduler' +2025-10-23 18:23:35.540 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:23:45.558 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:23:45 + → module: 'TaskScheduler' +2025-10-23 18:23:45.558 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:23:55.566 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:23:55 + → module: 'TaskScheduler' +2025-10-23 18:23:55.567 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:24:05.575 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:24:05 + → module: 'TaskScheduler' +2025-10-23 18:24:05.575 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:24:15.595 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:24:15 + → module: 'TaskScheduler' +2025-10-23 18:24:15.595 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:24:25.604 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:24:25 + → module: 'TaskScheduler' +2025-10-23 18:24:25.604 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:24:35.612 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:24:35 + → module: 'TaskScheduler' +2025-10-23 18:24:35.612 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:24:45.620 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:24:45 + → module: 'TaskScheduler' +2025-10-23 18:24:45.620 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:24:55.629 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:24:55 + → module: 'TaskScheduler' +2025-10-23 18:24:55.629 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:25:05.636 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:25:05 + → module: 'TaskScheduler' +2025-10-23 18:25:05.636 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:25:05.644 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:25:05.671 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 18:25:05.672 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:25:05.672 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 18:25:05.672 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 18:25:05.674 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 18:25:05.677 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 18:25:05.681 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 18:25:05.681 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 18:25:05.681 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 10:15:39 + → module: 'NewsAPIClient' +2025-10-23 18:25:05.681 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 10:15:39 + → module: 'NewsAPIClient' +2025-10-23 18:25:05.682 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 18:25:06.083 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:25:06.125 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:25:06.152 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:25:06.399 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:25:06.400 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 18:25:06.400 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.72秒 + → module: 'NewsAPIClient' +2025-10-23 18:25:06.402 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 18:25:06.403 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 18:25:06.405 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 18:25:06.405 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 18:25:06.407 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 10:15:39 + → module: 'NewsAPIClient' +2025-10-23 18:25:06.407 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 10:15:39 + → module: 'NewsAPIClient' +2025-10-23 18:25:06.407 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.73秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 18:25:06.421 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 18:25:06.422 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:25:15.675 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:25:15 + → module: 'TaskScheduler' +2025-10-23 18:25:15.675 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:25:25.683 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:25:25 + → module: 'TaskScheduler' +2025-10-23 18:25:25.683 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:25:35.691 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:25:35 + → module: 'TaskScheduler' +2025-10-23 18:25:35.691 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:25:45.700 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:25:45 + → module: 'TaskScheduler' +2025-10-23 18:25:45.700 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:25:55.708 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:25:55 + → module: 'TaskScheduler' +2025-10-23 18:25:55.709 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:26:05.718 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:26:05 + → module: 'TaskScheduler' +2025-10-23 18:26:05.718 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:26:15.726 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:26:15 + → module: 'TaskScheduler' +2025-10-23 18:26:15.726 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:26:25.734 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:26:25 + → module: 'TaskScheduler' +2025-10-23 18:26:25.735 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:26:35.743 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:26:35 + → module: 'TaskScheduler' +2025-10-23 18:26:35.743 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:26:45.751 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:26:45 + → module: 'TaskScheduler' +2025-10-23 18:26:45.751 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:26:55.760 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:26:55 + → module: 'TaskScheduler' +2025-10-23 18:26:55.760 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:27:05.767 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:27:05 + → module: 'TaskScheduler' +2025-10-23 18:27:05.767 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:27:15.790 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:27:15 + → module: 'TaskScheduler' +2025-10-23 18:27:15.790 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:27:25.799 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:27:25 + → module: 'TaskScheduler' +2025-10-23 18:27:25.799 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:27:35.806 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:27:35 + → module: 'TaskScheduler' +2025-10-23 18:27:35.806 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:27:45.813 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:27:45 + → module: 'TaskScheduler' +2025-10-23 18:27:45.813 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:27:55.821 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:27:55 + → module: 'TaskScheduler' +2025-10-23 18:27:55.821 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:28:05.829 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:28:05 + → module: 'TaskScheduler' +2025-10-23 18:28:05.829 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:28:15.837 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:28:15 + → module: 'TaskScheduler' +2025-10-23 18:28:15.838 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:28:25.845 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:28:25 + → module: 'TaskScheduler' +2025-10-23 18:28:25.845 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:28:35.853 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:28:35 + → module: 'TaskScheduler' +2025-10-23 18:28:35.854 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:28:45.861 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:28:45 + → module: 'TaskScheduler' +2025-10-23 18:28:45.861 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:28:55.869 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:28:55 + → module: 'TaskScheduler' +2025-10-23 18:28:55.869 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:29:05.878 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:29:05 + → module: 'TaskScheduler' +2025-10-23 18:29:05.878 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:29:15.888 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:29:15 + → module: 'TaskScheduler' +2025-10-23 18:29:15.888 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:29:25.896 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:29:25 + → module: 'TaskScheduler' +2025-10-23 18:29:25.896 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:29:35.904 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:29:35 + → module: 'TaskScheduler' +2025-10-23 18:29:35.904 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:29:45.912 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:29:45 + → module: 'TaskScheduler' +2025-10-23 18:29:45.912 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:29:55.939 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:29:55 + → module: 'TaskScheduler' +2025-10-23 18:29:55.939 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:30:05.946 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:30:05 + → module: 'TaskScheduler' +2025-10-23 18:30:05.946 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:30:05.966 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:30:05.979 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 18:30:05.979 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:30:05.979 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 18:30:05.980 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 18:30:05.980 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 18:30:05.983 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 18:30:05.985 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 18:30:05.985 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 18:30:05.986 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 10:15:39 + → module: 'NewsAPIClient' +2025-10-23 18:30:05.986 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 10:15:39 + → module: 'NewsAPIClient' +2025-10-23 18:30:05.986 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 18:30:06.414 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:30:06.441 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:30:06.451 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:30:06.776 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:30:06.777 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 18:30:06.777 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.79秒 + → module: 'NewsAPIClient' +2025-10-23 18:30:06.779 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 18:30:06.779 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 18:30:06.780 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 18:30:06.781 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 18:30:06.782 | DEBUG | rss_subscriptions:235 - 处理条目 1: 发展活力加速释放 湖南常德构建特色产业体系 + → module: 'NewsAPIClient' +2025-10-23 18:30:06.800 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 18:30:06.802 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 18:30:06.803 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 18:30:06.823 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 18:30:06.824 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 18:30:06.826 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 10:27:40 + → module: 'NewsAPIClient' +2025-10-23 18:30:06.826 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 10:27:40 + → module: 'NewsAPIClient' +2025-10-23 18:30:06.826 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.85秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 18:30:06.834 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 18:30:06.834 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:30:15.982 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:30:15 + → module: 'TaskScheduler' +2025-10-23 18:30:15.982 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:30:25.989 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:30:25 + → module: 'TaskScheduler' +2025-10-23 18:30:25.989 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:30:36.019 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:30:36 + → module: 'TaskScheduler' +2025-10-23 18:30:36.019 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:30:46.026 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:30:46 + → module: 'TaskScheduler' +2025-10-23 18:30:46.026 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:30:56.056 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:30:56 + → module: 'TaskScheduler' +2025-10-23 18:30:56.056 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:31:06.077 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:31:06 + → module: 'TaskScheduler' +2025-10-23 18:31:06.077 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:31:16.100 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:31:16 + → module: 'TaskScheduler' +2025-10-23 18:31:16.100 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:31:26.109 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:31:26 + → module: 'TaskScheduler' +2025-10-23 18:31:26.109 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:31:36.119 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:31:36 + → module: 'TaskScheduler' +2025-10-23 18:31:36.119 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:31:46.127 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:31:46 + → module: 'TaskScheduler' +2025-10-23 18:31:46.127 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:31:56.135 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:31:56 + → module: 'TaskScheduler' +2025-10-23 18:31:56.135 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:32:06.164 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:32:06 + → module: 'TaskScheduler' +2025-10-23 18:32:06.164 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:32:16.173 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:32:16 + → module: 'TaskScheduler' +2025-10-23 18:32:16.173 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:32:26.181 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:32:26 + → module: 'TaskScheduler' +2025-10-23 18:32:26.182 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:32:36.188 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:32:36 + → module: 'TaskScheduler' +2025-10-23 18:32:36.188 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:32:46.196 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:32:46 + → module: 'TaskScheduler' +2025-10-23 18:32:46.196 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:32:56.204 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:32:56 + → module: 'TaskScheduler' +2025-10-23 18:32:56.204 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:33:06.236 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:33:06 + → module: 'TaskScheduler' +2025-10-23 18:33:06.236 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:33:16.243 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:33:16 + → module: 'TaskScheduler' +2025-10-23 18:33:16.243 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:33:26.250 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:33:26 + → module: 'TaskScheduler' +2025-10-23 18:33:26.250 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:33:36.283 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:33:36 + → module: 'TaskScheduler' +2025-10-23 18:33:36.283 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:33:46.290 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:33:46 + → module: 'TaskScheduler' +2025-10-23 18:33:46.290 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:33:56.298 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:33:56 + → module: 'TaskScheduler' +2025-10-23 18:33:56.298 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:34:06.307 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:34:06 + → module: 'TaskScheduler' +2025-10-23 18:34:06.307 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:34:16.314 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:34:16 + → module: 'TaskScheduler' +2025-10-23 18:34:16.315 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:34:26.321 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:34:26 + → module: 'TaskScheduler' +2025-10-23 18:34:26.321 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:34:36.350 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:34:36 + → module: 'TaskScheduler' +2025-10-23 18:34:36.350 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:34:46.358 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:34:46 + → module: 'TaskScheduler' +2025-10-23 18:34:46.358 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:34:56.367 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:34:56 + → module: 'TaskScheduler' +2025-10-23 18:34:56.367 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:35:06.391 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:35:06 + → module: 'TaskScheduler' +2025-10-23 18:35:06.391 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:35:06.416 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:35:06.449 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 18:35:06.450 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:35:06.450 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 18:35:06.451 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 18:35:06.451 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 18:35:06.455 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 18:35:06.474 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 18:35:06.475 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 18:35:06.476 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 10:27:40 + → module: 'NewsAPIClient' +2025-10-23 18:35:06.476 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 10:27:40 + → module: 'NewsAPIClient' +2025-10-23 18:35:06.476 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 18:35:06.878 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:35:06.907 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:35:06.973 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:35:07.196 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:35:07.198 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 18:35:07.198 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.72秒 + → module: 'NewsAPIClient' +2025-10-23 18:35:07.199 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 18:35:07.200 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 18:35:07.201 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 18:35:07.202 | DEBUG | rss_subscriptions:235 - 处理条目 1: “十四五”山西晋中能源发展全景图:煤更优、电更稳、气更足、耗更少 + → module: 'NewsAPIClient' +2025-10-23 18:35:07.230 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 18:35:07.232 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 18:35:07.234 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 18:35:07.250 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 18:35:07.251 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 18:35:07.252 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 18:35:07.252 | DEBUG | rss_subscriptions:235 - 处理条目 1: “十四五”山西晋中能源发展全景图:煤更优、电更稳、气更足、耗更少 + → module: 'NewsAPIClient' +2025-10-23 18:35:07.255 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 18:35:07.256 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 18:35:07.257 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 18:35:07.262 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 0 + → error_message: "Duplicate entry '“十四五”山西晋中能源发展全景图:煤更优、ç' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '“十四五”山西晋中能源发展全景图:煤更优、电更稳、气更足、耗更少...', '文章链接': 'http://www.chinanews.com/cj/2025/10-23/10503347.shtml...', '文章摘要': '中新网晋中10月23日电(高雨晴)煤炭更“优”了、电力更“绿”了、气源更“足”了、能耗更“低”了……这些变化描绘出“十四五”期间山西晋中能源发展... +2025-10-23 18:35:07.262 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 0 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-23 18:35:07.263 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '“十四五”山西晋中能源发展全景图:煤更优、ç' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '“十四五”山西晋中能源发展全景图:煤更优、ç' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '“十四五”... +2025-10-23 18:35:07.264 | INFO | rss_subscriptions:259 - 成功写入 0/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 18:35:07.264 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 10:29:20 + → module: 'NewsAPIClient' +2025-10-23 18:35:07.265 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 10:29:20 + → module: 'NewsAPIClient' +2025-10-23 18:35:07.265 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.81秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 18:35:07.272 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 18:35:07.273 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:35:16.452 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:35:16 + → module: 'TaskScheduler' +2025-10-23 18:35:16.452 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:35:26.480 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:35:26 + → module: 'TaskScheduler' +2025-10-23 18:35:26.480 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:35:36.487 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:35:36 + → module: 'TaskScheduler' +2025-10-23 18:35:36.487 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:35:46.494 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:35:46 + → module: 'TaskScheduler' +2025-10-23 18:35:46.494 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:35:56.519 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:35:56 + → module: 'TaskScheduler' +2025-10-23 18:35:56.519 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:36:06.535 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:36:06 + → module: 'TaskScheduler' +2025-10-23 18:36:06.536 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:36:16.544 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:36:16 + → module: 'TaskScheduler' +2025-10-23 18:36:16.544 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:36:26.552 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:36:26 + → module: 'TaskScheduler' +2025-10-23 18:36:26.552 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:36:36.560 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:36:36 + → module: 'TaskScheduler' +2025-10-23 18:36:36.560 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:36:46.567 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:36:46 + → module: 'TaskScheduler' +2025-10-23 18:36:46.568 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:36:56.589 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:36:56 + → module: 'TaskScheduler' +2025-10-23 18:36:56.589 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:37:06.598 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:37:06 + → module: 'TaskScheduler' +2025-10-23 18:37:06.598 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:37:16.605 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:37:16 + → module: 'TaskScheduler' +2025-10-23 18:37:16.605 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:37:26.631 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:37:26 + → module: 'TaskScheduler' +2025-10-23 18:37:26.631 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:37:36.650 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:37:36 + → module: 'TaskScheduler' +2025-10-23 18:37:36.651 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:37:46.659 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:37:46 + → module: 'TaskScheduler' +2025-10-23 18:37:46.659 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:37:56.676 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:37:56 + → module: 'TaskScheduler' +2025-10-23 18:37:56.676 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:38:06.707 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:38:06 + → module: 'TaskScheduler' +2025-10-23 18:38:06.707 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:38:16.735 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:38:16 + → module: 'TaskScheduler' +2025-10-23 18:38:16.735 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:38:26.743 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:38:26 + → module: 'TaskScheduler' +2025-10-23 18:38:26.743 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:38:36.751 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:38:36 + → module: 'TaskScheduler' +2025-10-23 18:38:36.751 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:38:46.772 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:38:46 + → module: 'TaskScheduler' +2025-10-23 18:38:46.772 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:38:56.802 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:38:56 + → module: 'TaskScheduler' +2025-10-23 18:38:56.802 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:39:06.824 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:39:06 + → module: 'TaskScheduler' +2025-10-23 18:39:06.824 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:39:16.832 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:39:16 + → module: 'TaskScheduler' +2025-10-23 18:39:16.832 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:39:26.851 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:39:26 + → module: 'TaskScheduler' +2025-10-23 18:39:26.852 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:39:36.862 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:39:36 + → module: 'TaskScheduler' +2025-10-23 18:39:36.862 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:39:46.871 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:39:46 + → module: 'TaskScheduler' +2025-10-23 18:39:46.871 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:39:56.893 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:39:56 + → module: 'TaskScheduler' +2025-10-23 18:39:56.893 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:40:06.901 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:40:06 + → module: 'TaskScheduler' +2025-10-23 18:40:06.901 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:40:06.928 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:40:06.935 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 18:40:06.936 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:40:06.936 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 18:40:06.936 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 18:40:06.937 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 18:40:06.940 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 18:40:06.943 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 18:40:06.944 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 18:40:06.944 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 10:29:20 + → module: 'NewsAPIClient' +2025-10-23 18:40:06.945 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 10:29:20 + → module: 'NewsAPIClient' +2025-10-23 18:40:06.945 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 18:40:07.405 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:40:07.420 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:40:07.439 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:40:07.760 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:40:07.762 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 18:40:07.763 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.82秒 + → module: 'NewsAPIClient' +2025-10-23 18:40:07.764 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 18:40:07.765 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 18:40:07.766 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 18:40:07.767 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 18:40:07.768 | DEBUG | rss_subscriptions:235 - 处理条目 1: 官方通报“为人民服务”航标被破坏案件:2人被行政处罚 + → module: 'NewsAPIClient' +2025-10-23 18:40:07.768 | DEBUG | rss_subscriptions:235 - 处理条目 2: 调查显示:今年香港企业平均加薪幅度为2.5% + → module: 'NewsAPIClient' +2025-10-23 18:40:07.768 | DEBUG | rss_subscriptions:235 - 处理条目 3: 从“迷彩绿”到“乡村绿”:驻村书记陈珂的6年振兴答卷 + → module: 'NewsAPIClient' +2025-10-23 18:40:07.789 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 18:40:07.791 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 18:40:07.792 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 3 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 18:40:07.810 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 3 + → total_inserted: 3 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 18:40:07.810 | INFO | rss_subscriptions:259 - 成功写入 3/3 条记录 + → module: 'NewsAPIClient' +2025-10-23 18:40:07.812 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 10:38:13 + → module: 'NewsAPIClient' +2025-10-23 18:40:07.812 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 10:38:13 + → module: 'NewsAPIClient' +2025-10-23 18:40:07.813 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.88秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 18:40:07.820 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 18:40:07.821 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:40:16.938 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:40:16 + → module: 'TaskScheduler' +2025-10-23 18:40:16.938 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:40:26.959 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:40:26 + → module: 'TaskScheduler' +2025-10-23 18:40:26.959 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:40:36.965 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:40:36 + → module: 'TaskScheduler' +2025-10-23 18:40:36.965 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:40:46.991 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:40:46 + → module: 'TaskScheduler' +2025-10-23 18:40:46.991 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:40:57.021 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:40:57 + → module: 'TaskScheduler' +2025-10-23 18:40:57.021 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:41:07.029 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:41:07 + → module: 'TaskScheduler' +2025-10-23 18:41:07.029 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:41:17.063 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:41:17 + → module: 'TaskScheduler' +2025-10-23 18:41:17.064 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:41:27.097 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:41:27 + → module: 'TaskScheduler' +2025-10-23 18:41:27.097 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:41:37.106 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:41:37 + → module: 'TaskScheduler' +2025-10-23 18:41:37.106 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:41:47.114 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:41:47 + → module: 'TaskScheduler' +2025-10-23 18:41:47.114 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:41:57.134 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:41:57 + → module: 'TaskScheduler' +2025-10-23 18:41:57.134 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:42:07.143 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:42:07 + → module: 'TaskScheduler' +2025-10-23 18:42:07.144 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:42:17.166 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:42:17 + → module: 'TaskScheduler' +2025-10-23 18:42:17.166 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:42:27.190 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:42:27 + → module: 'TaskScheduler' +2025-10-23 18:42:27.190 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:42:37.217 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:42:37 + → module: 'TaskScheduler' +2025-10-23 18:42:37.217 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:42:47.236 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:42:47 + → module: 'TaskScheduler' +2025-10-23 18:42:47.236 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:42:57.244 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:42:57 + → module: 'TaskScheduler' +2025-10-23 18:42:57.244 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:43:07.250 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:43:07 + → module: 'TaskScheduler' +2025-10-23 18:43:07.250 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:43:17.270 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:43:17 + → module: 'TaskScheduler' +2025-10-23 18:43:17.270 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:43:27.276 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:43:27 + → module: 'TaskScheduler' +2025-10-23 18:43:27.276 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:43:37.284 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:43:37 + → module: 'TaskScheduler' +2025-10-23 18:43:37.284 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:43:47.311 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:43:47 + → module: 'TaskScheduler' +2025-10-23 18:43:47.311 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:43:57.338 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:43:57 + → module: 'TaskScheduler' +2025-10-23 18:43:57.338 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:44:07.348 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:44:07 + → module: 'TaskScheduler' +2025-10-23 18:44:07.348 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:44:17.355 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:44:17 + → module: 'TaskScheduler' +2025-10-23 18:44:17.355 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:44:27.376 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:44:27 + → module: 'TaskScheduler' +2025-10-23 18:44:27.376 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:44:37.401 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:44:37 + → module: 'TaskScheduler' +2025-10-23 18:44:37.401 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:44:47.409 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:44:47 + → module: 'TaskScheduler' +2025-10-23 18:44:47.409 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:44:57.418 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:44:57 + → module: 'TaskScheduler' +2025-10-23 18:44:57.418 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:45:07.425 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:45:07 + → module: 'TaskScheduler' +2025-10-23 18:45:07.425 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:45:07.433 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:45:07.454 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 18:45:07.455 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:45:07.455 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 18:45:07.455 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 18:45:07.455 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 18:45:07.480 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 18:45:07.482 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 18:45:07.483 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 18:45:07.483 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 10:38:13 + → module: 'NewsAPIClient' +2025-10-23 18:45:07.484 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 10:38:13 + → module: 'NewsAPIClient' +2025-10-23 18:45:07.484 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 18:45:07.893 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:45:07.906 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:45:07.931 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:45:08.211 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:45:08.214 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 18:45:08.215 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.73秒 + → module: 'NewsAPIClient' +2025-10-23 18:45:08.215 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 18:45:08.216 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 18:45:08.217 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 18:45:08.218 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 18:45:08.218 | DEBUG | rss_subscriptions:235 - 处理条目 1: 中国船企一次斩获国外减摇鳍最大订单 刷新纪录 + → module: 'NewsAPIClient' +2025-10-23 18:45:08.221 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 18:45:08.223 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 18:45:08.224 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 18:45:08.246 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 18:45:08.247 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 18:45:08.248 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 10:41:07 + → module: 'NewsAPIClient' +2025-10-23 18:45:08.248 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 10:41:07 + → module: 'NewsAPIClient' +2025-10-23 18:45:08.248 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.79秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 18:45:08.257 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 18:45:08.258 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:45:17.457 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:45:17 + → module: 'TaskScheduler' +2025-10-23 18:45:17.457 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:45:27.489 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:45:27 + → module: 'TaskScheduler' +2025-10-23 18:45:27.489 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:45:37.516 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:45:37 + → module: 'TaskScheduler' +2025-10-23 18:45:37.516 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:45:47.535 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:45:47 + → module: 'TaskScheduler' +2025-10-23 18:45:47.535 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:45:57.543 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:45:57 + → module: 'TaskScheduler' +2025-10-23 18:45:57.543 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:46:07.564 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:46:07 + → module: 'TaskScheduler' +2025-10-23 18:46:07.564 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:46:17.582 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:46:17 + → module: 'TaskScheduler' +2025-10-23 18:46:17.582 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:46:27.610 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:46:27 + → module: 'TaskScheduler' +2025-10-23 18:46:27.610 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:46:37.619 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:46:37 + → module: 'TaskScheduler' +2025-10-23 18:46:37.619 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:46:47.627 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:46:47 + → module: 'TaskScheduler' +2025-10-23 18:46:47.627 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:46:57.636 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:46:57 + → module: 'TaskScheduler' +2025-10-23 18:46:57.636 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:47:07.643 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:47:07 + → module: 'TaskScheduler' +2025-10-23 18:47:07.643 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:47:17.651 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:47:17 + → module: 'TaskScheduler' +2025-10-23 18:47:17.651 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:47:27.659 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:47:27 + → module: 'TaskScheduler' +2025-10-23 18:47:27.659 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:47:37.668 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:47:37 + → module: 'TaskScheduler' +2025-10-23 18:47:37.668 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:47:47.678 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:47:47 + → module: 'TaskScheduler' +2025-10-23 18:47:47.678 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:47:57.701 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:47:57 + → module: 'TaskScheduler' +2025-10-23 18:47:57.701 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:48:07.724 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:48:07 + → module: 'TaskScheduler' +2025-10-23 18:48:07.724 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:48:17.733 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:48:17 + → module: 'TaskScheduler' +2025-10-23 18:48:17.733 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:48:27.741 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:48:27 + → module: 'TaskScheduler' +2025-10-23 18:48:27.741 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:48:37.749 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:48:37 + → module: 'TaskScheduler' +2025-10-23 18:48:37.749 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:48:47.757 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:48:47 + → module: 'TaskScheduler' +2025-10-23 18:48:47.757 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:48:57.788 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:48:57 + → module: 'TaskScheduler' +2025-10-23 18:48:57.788 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:49:07.797 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:49:07 + → module: 'TaskScheduler' +2025-10-23 18:49:07.797 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:49:17.805 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:49:17 + → module: 'TaskScheduler' +2025-10-23 18:49:17.805 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:49:27.814 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:49:27 + → module: 'TaskScheduler' +2025-10-23 18:49:27.814 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:49:37.821 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:49:37 + → module: 'TaskScheduler' +2025-10-23 18:49:37.822 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:49:47.832 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:49:47 + → module: 'TaskScheduler' +2025-10-23 18:49:47.832 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:49:57.841 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:49:57 + → module: 'TaskScheduler' +2025-10-23 18:49:57.841 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:50:07.850 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:50:07 + → module: 'TaskScheduler' +2025-10-23 18:50:07.851 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:50:07.858 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:50:07.897 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 18:50:07.897 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:50:07.898 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 18:50:07.898 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 18:50:07.898 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 18:50:07.902 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 18:50:07.905 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 18:50:07.906 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 18:50:07.907 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 10:41:07 + → module: 'NewsAPIClient' +2025-10-23 18:50:07.907 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 10:41:07 + → module: 'NewsAPIClient' +2025-10-23 18:50:07.907 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 18:50:08.293 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:50:08.326 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:50:08.354 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:50:08.668 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:50:08.670 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 18:50:08.671 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.76秒 + → module: 'NewsAPIClient' +2025-10-23 18:50:08.671 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 18:50:08.673 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 18:50:08.674 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 18:50:08.675 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 18:50:08.677 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 10:41:07 + → module: 'NewsAPIClient' +2025-10-23 18:50:08.677 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 10:41:07 + → module: 'NewsAPIClient' +2025-10-23 18:50:08.677 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.78秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 18:50:08.686 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 18:50:08.687 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:50:17.900 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:50:17 + → module: 'TaskScheduler' +2025-10-23 18:50:17.900 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:50:27.910 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:50:27 + → module: 'TaskScheduler' +2025-10-23 18:50:27.910 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:50:37.931 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:50:37 + → module: 'TaskScheduler' +2025-10-23 18:50:37.931 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:50:47.938 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:50:47 + → module: 'TaskScheduler' +2025-10-23 18:50:47.938 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:50:57.958 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:50:57 + → module: 'TaskScheduler' +2025-10-23 18:50:57.958 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:51:07.966 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:51:07 + → module: 'TaskScheduler' +2025-10-23 18:51:07.966 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:51:17.973 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:51:17 + → module: 'TaskScheduler' +2025-10-23 18:51:17.973 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:51:27.981 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:51:27 + → module: 'TaskScheduler' +2025-10-23 18:51:27.981 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:51:37.989 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:51:37 + → module: 'TaskScheduler' +2025-10-23 18:51:37.989 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:51:47.996 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:51:47 + → module: 'TaskScheduler' +2025-10-23 18:51:47.996 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:51:58.005 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:51:58 + → module: 'TaskScheduler' +2025-10-23 18:51:58.005 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:52:08.012 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:52:08 + → module: 'TaskScheduler' +2025-10-23 18:52:08.012 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:52:18.019 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:52:18 + → module: 'TaskScheduler' +2025-10-23 18:52:18.019 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:52:28.029 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:52:28 + → module: 'TaskScheduler' +2025-10-23 18:52:28.029 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:52:38.037 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:52:38 + → module: 'TaskScheduler' +2025-10-23 18:52:38.037 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:52:48.045 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:52:48 + → module: 'TaskScheduler' +2025-10-23 18:52:48.046 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:52:58.070 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:52:58 + → module: 'TaskScheduler' +2025-10-23 18:52:58.070 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:53:08.077 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:53:08 + → module: 'TaskScheduler' +2025-10-23 18:53:08.077 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:53:18.086 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:53:18 + → module: 'TaskScheduler' +2025-10-23 18:53:18.086 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:53:28.094 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:53:28 + → module: 'TaskScheduler' +2025-10-23 18:53:28.094 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:53:38.117 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:53:38 + → module: 'TaskScheduler' +2025-10-23 18:53:38.117 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:53:48.125 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:53:48 + → module: 'TaskScheduler' +2025-10-23 18:53:48.125 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:53:58.145 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:53:58 + → module: 'TaskScheduler' +2025-10-23 18:53:58.145 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:54:08.178 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:54:08 + → module: 'TaskScheduler' +2025-10-23 18:54:08.178 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:54:18.187 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:54:18 + → module: 'TaskScheduler' +2025-10-23 18:54:18.187 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:54:28.196 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:54:28 + → module: 'TaskScheduler' +2025-10-23 18:54:28.196 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:54:38.229 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:54:38 + → module: 'TaskScheduler' +2025-10-23 18:54:38.229 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:54:48.236 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:54:48 + → module: 'TaskScheduler' +2025-10-23 18:54:48.236 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:54:58.244 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:54:58 + → module: 'TaskScheduler' +2025-10-23 18:54:58.244 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:55:08.251 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:55:08 + → module: 'TaskScheduler' +2025-10-23 18:55:08.251 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:55:08.259 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:55:08.285 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 18:55:08.285 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:55:08.287 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 18:55:08.287 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 18:55:08.287 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 18:55:08.306 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 18:55:08.308 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 18:55:08.309 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 18:55:08.310 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 10:41:07 + → module: 'NewsAPIClient' +2025-10-23 18:55:08.310 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 10:41:07 + → module: 'NewsAPIClient' +2025-10-23 18:55:08.310 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 18:55:08.735 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:55:08.748 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:55:08.761 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:55:09.094 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 18:55:09.096 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 18:55:09.096 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.79秒 + → module: 'NewsAPIClient' +2025-10-23 18:55:09.097 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 18:55:09.098 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 18:55:09.099 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 18:55:09.100 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 18:55:09.100 | DEBUG | rss_subscriptions:235 - 处理条目 1: 宁夏银川:地理标志保护“三维联动”护航葡萄酒产业高质量发展 + → module: 'NewsAPIClient' +2025-10-23 18:55:09.100 | DEBUG | rss_subscriptions:235 - 处理条目 2: 第七届未来能源大会在苏州举办 + → module: 'NewsAPIClient' +2025-10-23 18:55:09.101 | DEBUG | rss_subscriptions:235 - 处理条目 3: 韩政府:总统府迁址影响梨泰院踩踏事故警力调配 + → module: 'NewsAPIClient' +2025-10-23 18:55:09.126 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 18:55:09.128 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 18:55:09.130 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 3 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 18:55:09.149 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 3 + → total_inserted: 3 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 18:55:09.149 | INFO | rss_subscriptions:259 - 成功写入 3/3 条记录 + → module: 'NewsAPIClient' +2025-10-23 18:55:09.150 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 10:52:17 + → module: 'NewsAPIClient' +2025-10-23 18:55:09.150 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 10:52:17 + → module: 'NewsAPIClient' +2025-10-23 18:55:09.151 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.87秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 18:55:09.158 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 18:55:09.159 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 18:55:18.288 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:55:18 + → module: 'TaskScheduler' +2025-10-23 18:55:18.289 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:55:28.298 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:55:28 + → module: 'TaskScheduler' +2025-10-23 18:55:28.299 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:55:38.306 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:55:38 + → module: 'TaskScheduler' +2025-10-23 18:55:38.306 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:55:48.314 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:55:48 + → module: 'TaskScheduler' +2025-10-23 18:55:48.314 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:55:58.345 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:55:58 + → module: 'TaskScheduler' +2025-10-23 18:55:58.345 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:56:08.353 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:56:08 + → module: 'TaskScheduler' +2025-10-23 18:56:08.353 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:56:18.362 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:56:18 + → module: 'TaskScheduler' +2025-10-23 18:56:18.362 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:56:28.370 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:56:28 + → module: 'TaskScheduler' +2025-10-23 18:56:28.370 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:56:38.377 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:56:38 + → module: 'TaskScheduler' +2025-10-23 18:56:38.377 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:56:48.395 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:56:48 + → module: 'TaskScheduler' +2025-10-23 18:56:48.395 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:56:58.403 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:56:58 + → module: 'TaskScheduler' +2025-10-23 18:56:58.403 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:57:08.428 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:57:08 + → module: 'TaskScheduler' +2025-10-23 18:57:08.428 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:57:18.450 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:57:18 + → module: 'TaskScheduler' +2025-10-23 18:57:18.450 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:57:28.477 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:57:28 + → module: 'TaskScheduler' +2025-10-23 18:57:28.477 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:57:38.495 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:57:38 + → module: 'TaskScheduler' +2025-10-23 18:57:38.495 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:57:48.504 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:57:48 + → module: 'TaskScheduler' +2025-10-23 18:57:48.504 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:57:58.539 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:57:58 + → module: 'TaskScheduler' +2025-10-23 18:57:58.539 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:58:08.547 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:58:08 + → module: 'TaskScheduler' +2025-10-23 18:58:08.547 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:58:18.567 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:58:18 + → module: 'TaskScheduler' +2025-10-23 18:58:18.567 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:58:28.589 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:58:28 + → module: 'TaskScheduler' +2025-10-23 18:58:28.589 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:58:38.599 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:58:38 + → module: 'TaskScheduler' +2025-10-23 18:58:38.599 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:58:48.606 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:58:48 + → module: 'TaskScheduler' +2025-10-23 18:58:48.606 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:58:58.626 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:58:58 + → module: 'TaskScheduler' +2025-10-23 18:58:58.626 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:59:08.634 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:59:08 + → module: 'TaskScheduler' +2025-10-23 18:59:08.634 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:59:18.642 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:59:18 + → module: 'TaskScheduler' +2025-10-23 18:59:18.643 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:59:28.664 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:59:28 + → module: 'TaskScheduler' +2025-10-23 18:59:28.664 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:59:38.689 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:59:38 + → module: 'TaskScheduler' +2025-10-23 18:59:38.689 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:59:48.710 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:59:48 + → module: 'TaskScheduler' +2025-10-23 18:59:48.710 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 18:59:58.719 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 18:59:58 + → module: 'TaskScheduler' +2025-10-23 18:59:58.719 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:00:08.726 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:00:08 + → module: 'TaskScheduler' +2025-10-23 19:00:08.726 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:00:08.735 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:00:08.779 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 19:00:08.779 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:00:08.779 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 19:00:08.781 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 19:00:08.781 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 19:00:08.808 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 19:00:08.825 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 19:00:08.826 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 19:00:08.826 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 10:52:17 + → module: 'NewsAPIClient' +2025-10-23 19:00:08.827 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 10:52:17 + → module: 'NewsAPIClient' +2025-10-23 19:00:08.827 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 19:00:09.253 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:00:09.268 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:00:09.292 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:00:09.585 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:00:09.588 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 19:00:09.589 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.76秒 + → module: 'NewsAPIClient' +2025-10-23 19:00:09.589 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 19:00:09.590 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 19:00:09.591 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 19:00:09.592 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 19:00:09.594 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 10:52:17 + → module: 'NewsAPIClient' +2025-10-23 19:00:09.594 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 10:52:17 + → module: 'NewsAPIClient' +2025-10-23 19:00:09.595 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.82秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 19:00:09.602 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 19:00:09.604 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:00:18.782 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:00:18 + → module: 'TaskScheduler' +2025-10-23 19:00:18.782 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:00:28.790 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:00:28 + → module: 'TaskScheduler' +2025-10-23 19:00:28.790 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:00:38.798 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:00:38 + → module: 'TaskScheduler' +2025-10-23 19:00:38.798 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:00:48.829 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:00:48 + → module: 'TaskScheduler' +2025-10-23 19:00:48.829 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:00:58.858 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:00:58 + → module: 'TaskScheduler' +2025-10-23 19:00:58.858 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:01:08.865 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:01:08 + → module: 'TaskScheduler' +2025-10-23 19:01:08.866 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:01:18.874 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:01:18 + → module: 'TaskScheduler' +2025-10-23 19:01:18.874 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:01:28.882 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:01:28 + → module: 'TaskScheduler' +2025-10-23 19:01:28.882 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:01:38.907 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:01:38 + → module: 'TaskScheduler' +2025-10-23 19:01:38.907 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:01:48.934 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:01:48 + → module: 'TaskScheduler' +2025-10-23 19:01:48.935 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:01:58.944 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:01:58 + → module: 'TaskScheduler' +2025-10-23 19:01:58.944 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:02:08.952 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:02:08 + → module: 'TaskScheduler' +2025-10-23 19:02:08.952 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:02:18.981 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:02:18 + → module: 'TaskScheduler' +2025-10-23 19:02:18.982 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:02:28.989 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:02:28 + → module: 'TaskScheduler' +2025-10-23 19:02:28.989 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:02:38.996 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:02:38 + → module: 'TaskScheduler' +2025-10-23 19:02:38.996 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:02:49.019 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:02:49 + → module: 'TaskScheduler' +2025-10-23 19:02:49.019 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:02:59.028 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:02:59 + → module: 'TaskScheduler' +2025-10-23 19:02:59.028 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:03:09.036 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:03:09 + → module: 'TaskScheduler' +2025-10-23 19:03:09.036 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:03:19.044 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:03:19 + → module: 'TaskScheduler' +2025-10-23 19:03:19.044 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:03:29.053 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:03:29 + → module: 'TaskScheduler' +2025-10-23 19:03:29.053 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:03:39.072 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:03:39 + → module: 'TaskScheduler' +2025-10-23 19:03:39.072 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:03:49.098 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:03:49 + → module: 'TaskScheduler' +2025-10-23 19:03:49.098 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:03:59.106 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:03:59 + → module: 'TaskScheduler' +2025-10-23 19:03:59.106 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:04:09.113 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:04:09 + → module: 'TaskScheduler' +2025-10-23 19:04:09.113 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:04:19.121 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:04:19 + → module: 'TaskScheduler' +2025-10-23 19:04:19.122 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:04:29.130 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:04:29 + → module: 'TaskScheduler' +2025-10-23 19:04:29.130 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:04:39.140 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:04:39 + → module: 'TaskScheduler' +2025-10-23 19:04:39.140 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:04:49.160 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:04:49 + → module: 'TaskScheduler' +2025-10-23 19:04:49.160 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:04:59.186 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:04:59 + → module: 'TaskScheduler' +2025-10-23 19:04:59.186 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:05:09.210 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:05:09 + → module: 'TaskScheduler' +2025-10-23 19:05:09.211 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:05:09.220 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:05:09.254 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 19:05:09.255 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:05:09.255 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 19:05:09.255 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 19:05:09.256 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 19:05:09.282 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 19:05:09.286 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 19:05:09.287 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 19:05:09.287 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 10:52:17 + → module: 'NewsAPIClient' +2025-10-23 19:05:09.288 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 10:52:17 + → module: 'NewsAPIClient' +2025-10-23 19:05:09.288 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 19:05:09.726 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:05:09.739 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:05:09.763 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:05:10.049 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:05:10.051 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 19:05:10.052 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.76秒 + → module: 'NewsAPIClient' +2025-10-23 19:05:10.053 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 19:05:10.054 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 19:05:10.057 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 19:05:10.057 | DEBUG | rss_subscriptions:235 - 处理条目 1: 上海先进能源装备产业集聚区揭牌 + → module: 'NewsAPIClient' +2025-10-23 19:05:10.057 | DEBUG | rss_subscriptions:235 - 处理条目 2: 2025豫台经贸洽谈会签约超293亿元 + → module: 'NewsAPIClient' +2025-10-23 19:05:10.059 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 19:05:10.061 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 19:05:10.062 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 2 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 19:05:10.090 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 2 + → total_inserted: 2 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 19:05:10.091 | INFO | rss_subscriptions:259 - 成功写入 2/2 条记录 + → module: 'NewsAPIClient' +2025-10-23 19:05:10.092 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 19:05:10.092 | DEBUG | rss_subscriptions:235 - 处理条目 1: “铿锵玫瑰”西藏唐卡画院求学记 + → module: 'NewsAPIClient' +2025-10-23 19:05:10.092 | DEBUG | rss_subscriptions:235 - 处理条目 2: 2025豫台经贸洽谈会签约超293亿元 + → module: 'NewsAPIClient' +2025-10-23 19:05:10.095 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 19:05:10.097 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 19:05:10.098 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 2 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 19:05:10.107 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 1 + → error_message: "Duplicate entry '2025豫台经贸洽谈会签约超293亿元-2025-10-23 10:58:28' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '2025豫台经贸洽谈会签约超293亿元...', '文章链接': 'http://www.chinanews.com/cj/2025/10-23/10503364.shtml...', '文章摘要': '中新社郑州10月23日电 (王佳宁)由国台办、河南省政府共同主办的2025豫台经贸洽谈会暨两岸智能装备制造对接活动23日在河南郑州举行,是次活动共签约总金额超293亿元(... +2025-10-23 19:05:10.108 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 2 + → total_inserted: 1 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-23 19:05:10.109 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '2025豫台经贸洽谈会签约超293亿元-2025-10-23 10:58:28' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '2025豫台经贸洽谈会签约超293亿元-2025-10-23 10:58:28' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record'... +2025-10-23 19:05:10.109 | INFO | rss_subscriptions:259 - 成功写入 1/2 条记录 + → module: 'NewsAPIClient' +2025-10-23 19:05:10.110 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 11:01:55 + → module: 'NewsAPIClient' +2025-10-23 19:05:10.110 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 11:01:55 + → module: 'NewsAPIClient' +2025-10-23 19:05:10.112 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.86秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 19:05:10.120 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 19:05:10.121 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:05:19.256 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:05:19 + → module: 'TaskScheduler' +2025-10-23 19:05:19.256 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:05:29.263 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:05:29 + → module: 'TaskScheduler' +2025-10-23 19:05:29.264 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:05:39.271 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:05:39 + → module: 'TaskScheduler' +2025-10-23 19:05:39.271 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:05:49.295 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:05:49 + → module: 'TaskScheduler' +2025-10-23 19:05:49.295 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:05:59.303 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:05:59 + → module: 'TaskScheduler' +2025-10-23 19:05:59.303 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:06:09.313 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:06:09 + → module: 'TaskScheduler' +2025-10-23 19:06:09.313 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:06:19.321 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:06:19 + → module: 'TaskScheduler' +2025-10-23 19:06:19.322 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:06:29.344 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:06:29 + → module: 'TaskScheduler' +2025-10-23 19:06:29.344 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:06:39.371 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:06:39 + → module: 'TaskScheduler' +2025-10-23 19:06:39.372 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:06:49.380 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:06:49 + → module: 'TaskScheduler' +2025-10-23 19:06:49.380 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:06:59.387 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:06:59 + → module: 'TaskScheduler' +2025-10-23 19:06:59.388 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:07:09.411 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:07:09 + → module: 'TaskScheduler' +2025-10-23 19:07:09.411 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:07:19.430 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:07:19 + → module: 'TaskScheduler' +2025-10-23 19:07:19.430 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:07:29.437 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:07:29 + → module: 'TaskScheduler' +2025-10-23 19:07:29.437 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:07:39.468 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:07:39 + → module: 'TaskScheduler' +2025-10-23 19:07:39.468 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:07:49.499 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:07:49 + → module: 'TaskScheduler' +2025-10-23 19:07:49.499 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:07:49.527 | INFO | main:87 - 小时任务统计 + → module: 'Main' + → 总任务数: 12 + → 成功: 12 + → 失败: 0 +2025-10-23 19:07:59.528 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:07:59 + → module: 'TaskScheduler' +2025-10-23 19:07:59.528 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:08:09.535 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:08:09 + → module: 'TaskScheduler' +2025-10-23 19:08:09.535 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:08:19.568 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:08:19 + → module: 'TaskScheduler' +2025-10-23 19:08:19.568 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:08:29.595 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:08:29 + → module: 'TaskScheduler' +2025-10-23 19:08:29.595 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:08:39.603 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:08:39 + → module: 'TaskScheduler' +2025-10-23 19:08:39.603 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:08:49.634 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:08:49 + → module: 'TaskScheduler' +2025-10-23 19:08:49.634 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:08:59.643 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:08:59 + → module: 'TaskScheduler' +2025-10-23 19:08:59.643 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:09:09.662 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:09:09 + → module: 'TaskScheduler' +2025-10-23 19:09:09.662 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:09:19.684 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:09:19 + → module: 'TaskScheduler' +2025-10-23 19:09:19.684 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:09:29.692 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:09:29 + → module: 'TaskScheduler' +2025-10-23 19:09:29.692 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:09:39.713 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:09:39 + → module: 'TaskScheduler' +2025-10-23 19:09:39.713 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:09:49.722 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:09:49 + → module: 'TaskScheduler' +2025-10-23 19:09:49.722 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:09:59.730 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:09:59 + → module: 'TaskScheduler' +2025-10-23 19:09:59.730 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:10:09.738 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:10:09 + → module: 'TaskScheduler' +2025-10-23 19:10:09.738 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:10:09.747 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:10:09.791 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 19:10:09.792 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:10:09.792 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 19:10:09.793 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 19:10:09.793 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 19:10:09.798 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 19:10:09.820 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 19:10:09.821 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 19:10:09.821 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 11:01:55 + → module: 'NewsAPIClient' +2025-10-23 19:10:09.822 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 11:01:55 + → module: 'NewsAPIClient' +2025-10-23 19:10:09.822 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 19:10:10.242 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:10:10.256 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:10:10.267 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:10:10.622 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:10:10.625 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 19:10:10.625 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.80秒 + → module: 'NewsAPIClient' +2025-10-23 19:10:10.626 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 19:10:10.626 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 19:10:10.627 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 19:10:10.628 | DEBUG | rss_subscriptions:235 - 处理条目 1: 上海首发“进博会溢出联动政策包” + → module: 'NewsAPIClient' +2025-10-23 19:10:10.630 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 19:10:10.631 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 19:10:10.632 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 19:10:10.640 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 19:10:10.641 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 19:10:10.641 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 19:10:10.641 | DEBUG | rss_subscriptions:235 - 处理条目 1: 拉萨乃朗谷识别到17只雪豹 豹妈带“三娃”显疲惫 + → module: 'NewsAPIClient' +2025-10-23 19:10:10.641 | DEBUG | rss_subscriptions:235 - 处理条目 2: “十五五”主要目标确定 | 一图速览 + → module: 'NewsAPIClient' +2025-10-23 19:10:10.642 | DEBUG | rss_subscriptions:235 - 处理条目 3: 上海首发“进博会溢出联动政策包” + → module: 'NewsAPIClient' +2025-10-23 19:10:10.645 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 19:10:10.646 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 19:10:10.647 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 3 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 19:10:10.663 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 2 + → error_message: "Duplicate entry '上海首发“进博会溢出联动政策包”-2025-10-23 11:0' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '上海首发“进博会溢出联动政策包”...', '文章链接': 'http://www.chinanews.com/cj/2025/10-23/10503363.shtml...', '文章摘要': '中新社上海10月23日电 (记者 姜煜)在23日举行的2025上海“进口嗨购节”暨“国别商品文化缤纷月”活动启动仪式上,上海市商务委、上海市公安局、上海市税务局、上海海关、虹桥... +2025-10-23 19:10:10.664 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 3 + → total_inserted: 2 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-23 19:10:10.664 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 2, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '上海首发“进博会溢出联动政策包”-2025-10-23 11:0' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 2, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '上海首发“进博会溢出联动政策包”-2025-10-23 11:0' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标... +2025-10-23 19:10:10.666 | INFO | rss_subscriptions:259 - 成功写入 2/3 条记录 + → module: 'NewsAPIClient' +2025-10-23 19:10:10.667 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 11:06:01 + → module: 'NewsAPIClient' +2025-10-23 19:10:10.667 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 11:06:01 + → module: 'NewsAPIClient' +2025-10-23 19:10:10.667 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.87秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 19:10:10.676 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 19:10:10.677 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:10:19.795 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:10:19 + → module: 'TaskScheduler' +2025-10-23 19:10:19.795 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:10:29.805 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:10:29 + → module: 'TaskScheduler' +2025-10-23 19:10:29.805 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:10:39.814 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:10:39 + → module: 'TaskScheduler' +2025-10-23 19:10:39.814 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:10:49.840 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:10:49 + → module: 'TaskScheduler' +2025-10-23 19:10:49.840 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:10:59.848 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:10:59 + → module: 'TaskScheduler' +2025-10-23 19:10:59.848 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:11:09.883 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:11:09 + → module: 'TaskScheduler' +2025-10-23 19:11:09.883 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:11:19.890 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:11:19 + → module: 'TaskScheduler' +2025-10-23 19:11:19.890 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:11:29.899 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:11:29 + → module: 'TaskScheduler' +2025-10-23 19:11:29.899 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:11:39.906 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:11:39 + → module: 'TaskScheduler' +2025-10-23 19:11:39.907 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:11:49.914 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:11:49 + → module: 'TaskScheduler' +2025-10-23 19:11:49.914 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:11:59.923 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:11:59 + → module: 'TaskScheduler' +2025-10-23 19:11:59.923 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:12:09.951 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:12:09 + → module: 'TaskScheduler' +2025-10-23 19:12:09.951 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:12:19.977 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:12:19 + → module: 'TaskScheduler' +2025-10-23 19:12:19.977 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:12:29.985 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:12:29 + → module: 'TaskScheduler' +2025-10-23 19:12:29.985 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:12:40.014 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:12:40 + → module: 'TaskScheduler' +2025-10-23 19:12:40.014 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:12:50.021 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:12:50 + → module: 'TaskScheduler' +2025-10-23 19:12:50.021 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:13:00.053 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:13:00 + → module: 'TaskScheduler' +2025-10-23 19:13:00.053 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:13:10.061 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:13:10 + → module: 'TaskScheduler' +2025-10-23 19:13:10.061 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:13:20.069 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:13:20 + → module: 'TaskScheduler' +2025-10-23 19:13:20.069 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:13:30.077 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:13:30 + → module: 'TaskScheduler' +2025-10-23 19:13:30.077 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:13:40.103 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:13:40 + → module: 'TaskScheduler' +2025-10-23 19:13:40.103 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:13:50.133 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:13:50 + → module: 'TaskScheduler' +2025-10-23 19:13:50.133 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:14:00.144 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:14:00 + → module: 'TaskScheduler' +2025-10-23 19:14:00.144 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:14:10.167 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:14:10 + → module: 'TaskScheduler' +2025-10-23 19:14:10.167 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:14:20.175 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:14:20 + → module: 'TaskScheduler' +2025-10-23 19:14:20.175 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:14:30.183 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:14:30 + → module: 'TaskScheduler' +2025-10-23 19:14:30.183 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:14:40.211 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:14:40 + → module: 'TaskScheduler' +2025-10-23 19:14:40.212 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:14:50.220 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:14:50 + → module: 'TaskScheduler' +2025-10-23 19:14:50.220 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:15:00.242 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:15:00 + → module: 'TaskScheduler' +2025-10-23 19:15:00.242 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:15:00.249 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:15:00.271 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 19:15:00.272 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:15:00.272 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 19:15:00.272 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 19:15:00.272 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 19:15:00.275 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 19:15:00.279 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 19:15:00.279 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 19:15:00.280 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 11:06:01 + → module: 'NewsAPIClient' +2025-10-23 19:15:00.280 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 11:06:01 + → module: 'NewsAPIClient' +2025-10-23 19:15:00.281 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 19:15:00.726 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:15:00.739 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:15:00.749 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:15:01.044 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:15:01.046 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 19:15:01.046 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.76秒 + → module: 'NewsAPIClient' +2025-10-23 19:15:01.047 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 19:15:01.048 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 19:15:01.048 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 19:15:01.050 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 19:15:01.050 | DEBUG | rss_subscriptions:235 - 处理条目 1: “一点一策”破难题 广西百色市超八成内涝点积水已消退 + → module: 'NewsAPIClient' +2025-10-23 19:15:01.053 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 19:15:01.054 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 19:15:01.054 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 19:15:01.063 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 19:15:01.063 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 19:15:01.064 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 11:09:39 + → module: 'NewsAPIClient' +2025-10-23 19:15:01.064 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 11:09:39 + → module: 'NewsAPIClient' +2025-10-23 19:15:01.066 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.79秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 19:15:01.073 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 19:15:01.074 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:15:10.273 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:15:10 + → module: 'TaskScheduler' +2025-10-23 19:15:10.273 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:15:20.298 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:15:20 + → module: 'TaskScheduler' +2025-10-23 19:15:20.298 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:15:30.306 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:15:30 + → module: 'TaskScheduler' +2025-10-23 19:15:30.306 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:15:40.314 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:15:40 + → module: 'TaskScheduler' +2025-10-23 19:15:40.314 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:15:50.322 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:15:50 + → module: 'TaskScheduler' +2025-10-23 19:15:50.322 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:16:00.332 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:16:00 + → module: 'TaskScheduler' +2025-10-23 19:16:00.332 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:16:10.340 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:16:10 + → module: 'TaskScheduler' +2025-10-23 19:16:10.340 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:16:20.361 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:16:20 + → module: 'TaskScheduler' +2025-10-23 19:16:20.361 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:16:30.370 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:16:30 + → module: 'TaskScheduler' +2025-10-23 19:16:30.370 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:16:40.378 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:16:40 + → module: 'TaskScheduler' +2025-10-23 19:16:40.378 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:16:50.401 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:16:50 + → module: 'TaskScheduler' +2025-10-23 19:16:50.401 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:17:00.420 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:17:00 + → module: 'TaskScheduler' +2025-10-23 19:17:00.420 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:17:10.428 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:17:10 + → module: 'TaskScheduler' +2025-10-23 19:17:10.428 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:17:20.451 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:17:20 + → module: 'TaskScheduler' +2025-10-23 19:17:20.451 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:17:30.459 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:17:30 + → module: 'TaskScheduler' +2025-10-23 19:17:30.459 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:17:40.466 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:17:40 + → module: 'TaskScheduler' +2025-10-23 19:17:40.466 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:17:50.474 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:17:50 + → module: 'TaskScheduler' +2025-10-23 19:17:50.475 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:18:00.497 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:18:00 + → module: 'TaskScheduler' +2025-10-23 19:18:00.497 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:18:10.504 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:18:10 + → module: 'TaskScheduler' +2025-10-23 19:18:10.504 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:18:20.513 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:18:20 + → module: 'TaskScheduler' +2025-10-23 19:18:20.513 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:18:30.523 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:18:30 + → module: 'TaskScheduler' +2025-10-23 19:18:30.523 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:18:40.547 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:18:40 + → module: 'TaskScheduler' +2025-10-23 19:18:40.547 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:18:50.571 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:18:50 + → module: 'TaskScheduler' +2025-10-23 19:18:50.571 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:19:00.603 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:19:00 + → module: 'TaskScheduler' +2025-10-23 19:19:00.603 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:19:10.631 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:19:10 + → module: 'TaskScheduler' +2025-10-23 19:19:10.631 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:19:20.639 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:19:20 + → module: 'TaskScheduler' +2025-10-23 19:19:20.639 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:19:30.648 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:19:30 + → module: 'TaskScheduler' +2025-10-23 19:19:30.648 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:19:40.655 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:19:40 + → module: 'TaskScheduler' +2025-10-23 19:19:40.655 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:19:50.664 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:19:50 + → module: 'TaskScheduler' +2025-10-23 19:19:50.664 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:20:00.672 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:20:00 + → module: 'TaskScheduler' +2025-10-23 19:20:00.672 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:20:00.679 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:20:00.702 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 19:20:00.702 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:20:00.702 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 19:20:00.702 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 19:20:00.703 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 19:20:00.718 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 19:20:00.734 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 19:20:00.734 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 19:20:00.735 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 11:09:39 + → module: 'NewsAPIClient' +2025-10-23 19:20:00.735 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 11:09:39 + → module: 'NewsAPIClient' +2025-10-23 19:20:00.735 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 19:20:01.133 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:20:01.182 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:20:01.243 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:20:01.495 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:20:01.497 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 19:20:01.497 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.76秒 + → module: 'NewsAPIClient' +2025-10-23 19:20:01.498 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 19:20:01.498 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 19:20:01.500 | DEBUG | rss_subscriptions:235 - 处理条目 1: 突发:以军空袭黎巴嫩东部 称打击真主党导弹设施 + → module: 'NewsAPIClient' +2025-10-23 19:20:01.521 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 19:20:01.522 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 19:20:01.523 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 19:20:01.546 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 19:20:01.546 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 19:20:01.547 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 19:20:01.547 | DEBUG | rss_subscriptions:235 - 处理条目 1: 乘势而上,奋力开创中国式现代化建设新局面——与会同志谈贯彻落实党的二十届四中全会精神 + → module: 'NewsAPIClient' +2025-10-23 19:20:01.550 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 19:20:01.551 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 19:20:01.552 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 19:20:01.558 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 19:20:01.559 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 19:20:01.559 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 19:20:01.560 | DEBUG | rss_subscriptions:235 - 处理条目 1: 海外楚商林鹏:为鄂欧“双向奔赴”牵线搭桥 + → module: 'NewsAPIClient' +2025-10-23 19:20:01.560 | DEBUG | rss_subscriptions:235 - 处理条目 2: “十四五”以来福建科技创新成果丰硕 + → module: 'NewsAPIClient' +2025-10-23 19:20:01.560 | DEBUG | rss_subscriptions:235 - 处理条目 3: 跨越衡柳铁路 广西最重转体桥成功转体 + → module: 'NewsAPIClient' +2025-10-23 19:20:01.561 | DEBUG | rss_subscriptions:235 - 处理条目 4: 第19届倡棋杯决赛首局比赛:丁浩执白不计点胜芈昱廷 + → module: 'NewsAPIClient' +2025-10-23 19:20:01.561 | DEBUG | rss_subscriptions:235 - 处理条目 5: 国际调解院秘书长郑若骅:助力香港打造“全球调解之都” + → module: 'NewsAPIClient' +2025-10-23 19:20:01.561 | DEBUG | rss_subscriptions:235 - 处理条目 6: 北京今年已完成27项市级疏堵工程 + → module: 'NewsAPIClient' +2025-10-23 19:20:01.561 | DEBUG | rss_subscriptions:235 - 处理条目 7: 从面朝黄土到机器驰骋 广西智慧农机深耕沃野 + → module: 'NewsAPIClient' +2025-10-23 19:20:01.561 | DEBUG | rss_subscriptions:235 - 处理条目 8: 突发:以军空袭黎巴嫩东部 称打击真主党导弹设施 + → module: 'NewsAPIClient' +2025-10-23 19:20:01.561 | DEBUG | rss_subscriptions:235 - 处理条目 9: 乘势而上,奋力开创中国式现代化建设新局面——与会同志谈贯彻落实党的二十届四中全会精神 + → module: 'NewsAPIClient' +2025-10-23 19:20:01.565 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 19:20:01.566 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 19:20:01.567 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 9 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 19:20:01.612 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 7 + → error_message: "Duplicate entry '突发:以军空袭黎巴嫩东部 称打击真主党导弹设' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '突发:以军空袭黎巴嫩东部 称打击真主党导弹设施...', '文章链接': 'http://www.chinanews.com/gj/2025/10-23/10503389.shtml...', '文章摘要': '中新网10月23日电 据法新社援引黎巴嫩媒体报道,当地时间23日,以色列向黎巴嫩东部山区发起一系列袭击。以色列军方声称,此次行动打击了黎巴嫩真主党军事目标。...... +2025-10-23 19:20:01.615 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 8 + → error_message: "Duplicate entry '乘势而上,奋力开创中国式现代化建设新局面—â' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '乘势而上,奋力开创中国式现代化建设新局面——与会同志谈贯彻落实党的二十届四中全会精神...', '文章链接': 'http://www.chinanews.com/gn/2025/10-23/10503385.shtml...', '文章摘要': '新华社北京10月23日电 题:乘势而上,奋力开创中国式现代化建设新局面——与会同志谈贯彻落实党的二十届四中全会精神...',... +2025-10-23 19:20:01.616 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 9 + → total_inserted: 7 + → total_duplicates: 2 + → total_failed: 0 + → failed_records_count: 2 +2025-10-23 19:20:01.616 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 7, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '突发:以军空袭黎巴嫩东部 称打击真主党导弹设' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 8, 'type': 'du... + → detailed_failed_records: [{'index': 7, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '突发:以军空袭黎巴嫩东部 称打击真主党导弹设' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '突发:以军... +2025-10-23 19:20:01.617 | INFO | rss_subscriptions:259 - 成功写入 7/9 条记录 + → module: 'NewsAPIClient' +2025-10-23 19:20:01.618 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 11:18:15 + → module: 'NewsAPIClient' +2025-10-23 19:20:01.618 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 11:18:15 + → module: 'NewsAPIClient' +2025-10-23 19:20:01.618 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.92秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 19:20:01.648 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 19:20:01.649 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:20:10.704 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:20:10 + → module: 'TaskScheduler' +2025-10-23 19:20:10.704 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:20:20.735 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:20:20 + → module: 'TaskScheduler' +2025-10-23 19:20:20.736 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:20:30.743 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:20:30 + → module: 'TaskScheduler' +2025-10-23 19:20:30.743 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:20:40.751 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:20:40 + → module: 'TaskScheduler' +2025-10-23 19:20:40.751 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:20:50.760 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:20:50 + → module: 'TaskScheduler' +2025-10-23 19:20:50.761 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:21:00.769 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:21:00 + → module: 'TaskScheduler' +2025-10-23 19:21:00.769 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:21:10.777 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:21:10 + → module: 'TaskScheduler' +2025-10-23 19:21:10.777 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:21:20.785 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:21:20 + → module: 'TaskScheduler' +2025-10-23 19:21:20.785 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:21:30.814 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:21:30 + → module: 'TaskScheduler' +2025-10-23 19:21:30.814 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:21:40.846 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:21:40 + → module: 'TaskScheduler' +2025-10-23 19:21:40.846 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:21:50.878 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:21:50 + → module: 'TaskScheduler' +2025-10-23 19:21:50.878 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:22:00.901 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:22:00 + → module: 'TaskScheduler' +2025-10-23 19:22:00.901 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:22:10.909 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:22:10 + → module: 'TaskScheduler' +2025-10-23 19:22:10.909 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:22:20.936 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:22:20 + → module: 'TaskScheduler' +2025-10-23 19:22:20.936 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:22:30.944 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:22:30 + → module: 'TaskScheduler' +2025-10-23 19:22:30.944 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:22:40.951 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:22:40 + → module: 'TaskScheduler' +2025-10-23 19:22:40.951 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:22:50.958 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:22:50 + → module: 'TaskScheduler' +2025-10-23 19:22:50.958 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:23:00.966 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:23:00 + → module: 'TaskScheduler' +2025-10-23 19:23:00.966 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:23:10.984 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:23:10 + → module: 'TaskScheduler' +2025-10-23 19:23:10.984 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:23:21.003 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:23:21 + → module: 'TaskScheduler' +2025-10-23 19:23:21.003 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:23:31.030 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:23:31 + → module: 'TaskScheduler' +2025-10-23 19:23:31.030 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:23:41.039 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:23:41 + → module: 'TaskScheduler' +2025-10-23 19:23:41.039 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:23:51.061 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:23:51 + → module: 'TaskScheduler' +2025-10-23 19:23:51.061 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:24:01.070 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:24:01 + → module: 'TaskScheduler' +2025-10-23 19:24:01.070 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:24:11.077 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:24:11 + → module: 'TaskScheduler' +2025-10-23 19:24:11.077 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:24:21.101 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:24:21 + → module: 'TaskScheduler' +2025-10-23 19:24:21.101 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:24:31.122 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:24:31 + → module: 'TaskScheduler' +2025-10-23 19:24:31.122 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:24:41.133 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:24:41 + → module: 'TaskScheduler' +2025-10-23 19:24:41.134 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:24:51.142 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:24:51 + → module: 'TaskScheduler' +2025-10-23 19:24:51.142 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:25:01.174 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:25:01 + → module: 'TaskScheduler' +2025-10-23 19:25:01.174 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:25:01.182 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:25:01.202 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 19:25:01.203 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:25:01.203 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 19:25:01.203 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 19:25:01.203 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 19:25:01.207 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 19:25:01.209 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 19:25:01.209 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 19:25:01.210 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 11:18:15 + → module: 'NewsAPIClient' +2025-10-23 19:25:01.210 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 11:18:15 + → module: 'NewsAPIClient' +2025-10-23 19:25:01.210 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 19:25:01.653 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:25:01.666 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:25:01.680 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:25:01.961 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:25:01.962 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 19:25:01.963 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.75秒 + → module: 'NewsAPIClient' +2025-10-23 19:25:01.963 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 19:25:01.964 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 19:25:01.965 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 19:25:01.965 | DEBUG | rss_subscriptions:235 - 处理条目 1: 巴西首个华社醒狮团:岭南流脉 南美传声 + → module: 'NewsAPIClient' +2025-10-23 19:25:01.966 | DEBUG | rss_subscriptions:235 - 处理条目 2: 亚洲职业安全培训项目在马来西亚举行 听取中企经验 + → module: 'NewsAPIClient' +2025-10-23 19:25:01.969 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 19:25:01.970 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 19:25:01.971 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 2 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 19:25:01.992 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 2 + → total_inserted: 2 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 19:25:01.993 | INFO | rss_subscriptions:259 - 成功写入 2/2 条记录 + → module: 'NewsAPIClient' +2025-10-23 19:25:01.993 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 19:25:01.995 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 11:20:58 + → module: 'NewsAPIClient' +2025-10-23 19:25:01.995 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 11:20:58 + → module: 'NewsAPIClient' +2025-10-23 19:25:01.996 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.79秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 19:25:02.003 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 19:25:02.004 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:25:11.205 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:25:11 + → module: 'TaskScheduler' +2025-10-23 19:25:11.205 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:25:21.229 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:25:21 + → module: 'TaskScheduler' +2025-10-23 19:25:21.229 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:25:31.236 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:25:31 + → module: 'TaskScheduler' +2025-10-23 19:25:31.236 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:25:41.253 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:25:41 + → module: 'TaskScheduler' +2025-10-23 19:25:41.253 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:25:51.261 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:25:51 + → module: 'TaskScheduler' +2025-10-23 19:25:51.261 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:26:01.268 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:26:01 + → module: 'TaskScheduler' +2025-10-23 19:26:01.268 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:26:11.277 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:26:11 + → module: 'TaskScheduler' +2025-10-23 19:26:11.277 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:26:21.284 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:26:21 + → module: 'TaskScheduler' +2025-10-23 19:26:21.284 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:26:31.311 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:26:31 + → module: 'TaskScheduler' +2025-10-23 19:26:31.312 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:26:41.318 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:26:41 + → module: 'TaskScheduler' +2025-10-23 19:26:41.319 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:26:51.327 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:26:51 + → module: 'TaskScheduler' +2025-10-23 19:26:51.327 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:27:01.334 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:27:01 + → module: 'TaskScheduler' +2025-10-23 19:27:01.334 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:27:11.340 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:27:11 + → module: 'TaskScheduler' +2025-10-23 19:27:11.340 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:27:21.347 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:27:21 + → module: 'TaskScheduler' +2025-10-23 19:27:21.347 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:27:31.355 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:27:31 + → module: 'TaskScheduler' +2025-10-23 19:27:31.355 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:27:41.363 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:27:41 + → module: 'TaskScheduler' +2025-10-23 19:27:41.363 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:27:51.395 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:27:51 + → module: 'TaskScheduler' +2025-10-23 19:27:51.395 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:28:01.426 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:28:01 + → module: 'TaskScheduler' +2025-10-23 19:28:01.426 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:28:11.436 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:28:11 + → module: 'TaskScheduler' +2025-10-23 19:28:11.436 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:28:21.454 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:28:21 + → module: 'TaskScheduler' +2025-10-23 19:28:21.454 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:28:31.461 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:28:31 + → module: 'TaskScheduler' +2025-10-23 19:28:31.461 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:28:41.489 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:28:41 + → module: 'TaskScheduler' +2025-10-23 19:28:41.490 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:28:51.510 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:28:51 + → module: 'TaskScheduler' +2025-10-23 19:28:51.510 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:29:01.519 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:29:01 + → module: 'TaskScheduler' +2025-10-23 19:29:01.520 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:29:11.527 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:29:11 + → module: 'TaskScheduler' +2025-10-23 19:29:11.527 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:29:21.535 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:29:21 + → module: 'TaskScheduler' +2025-10-23 19:29:21.535 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:29:31.565 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:29:31 + → module: 'TaskScheduler' +2025-10-23 19:29:31.565 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:29:41.574 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:29:41 + → module: 'TaskScheduler' +2025-10-23 19:29:41.574 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:29:51.581 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:29:51 + → module: 'TaskScheduler' +2025-10-23 19:29:51.581 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:30:01.589 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:30:01 + → module: 'TaskScheduler' +2025-10-23 19:30:01.589 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:30:01.596 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:30:01.627 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 19:30:01.628 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:30:01.628 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 19:30:01.628 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 19:30:01.628 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 19:30:01.652 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 19:30:01.668 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 19:30:01.669 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 19:30:01.670 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 11:20:58 + → module: 'NewsAPIClient' +2025-10-23 19:30:01.670 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 11:20:58 + → module: 'NewsAPIClient' +2025-10-23 19:30:01.670 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 19:30:02.070 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:30:02.086 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:30:02.105 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:30:02.406 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:30:02.408 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 19:30:02.409 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.74秒 + → module: 'NewsAPIClient' +2025-10-23 19:30:02.409 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 19:30:02.410 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 19:30:02.412 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 19:30:02.412 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 19:30:02.413 | DEBUG | rss_subscriptions:235 - 处理条目 1: 美国政府打压海上风电行业 冲击本国造船业和港口发展 + → module: 'NewsAPIClient' +2025-10-23 19:30:02.413 | DEBUG | rss_subscriptions:235 - 处理条目 2: 湖南永兴探索“补贴+保险”政策包 护航油茶种植助农增收 + → module: 'NewsAPIClient' +2025-10-23 19:30:02.413 | DEBUG | rss_subscriptions:235 - 处理条目 3: 长春落叶景观路焕新亮相 精细化管理留住秋日诗意 + → module: 'NewsAPIClient' +2025-10-23 19:30:02.413 | DEBUG | rss_subscriptions:235 - 处理条目 4: 深圳打造世界级AI生态与万亿级产业集群 + → module: 'NewsAPIClient' +2025-10-23 19:30:02.413 | DEBUG | rss_subscriptions:235 - 处理条目 5: 舞台剧《一日百年》再现航天人报国路 + → module: 'NewsAPIClient' +2025-10-23 19:30:02.414 | DEBUG | rss_subscriptions:235 - 处理条目 6: 浙江援青专家化解动脉瘤难题 从手腕入路成功“拆弹” + → module: 'NewsAPIClient' +2025-10-23 19:30:02.414 | DEBUG | rss_subscriptions:235 - 处理条目 7: 广东出台陆生野生动物致害补偿办法 明确补偿标准 + → module: 'NewsAPIClient' +2025-10-23 19:30:02.414 | DEBUG | rss_subscriptions:235 - 处理条目 8: 刘亮程:语言有遥远的地平线和无尽的远方 + → module: 'NewsAPIClient' +2025-10-23 19:30:02.417 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 19:30:02.418 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 19:30:02.420 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 8 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 19:30:02.464 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 8 + → total_inserted: 8 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 19:30:02.465 | INFO | rss_subscriptions:259 - 成功写入 8/8 条记录 + → module: 'NewsAPIClient' +2025-10-23 19:30:02.466 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 11:29:36 + → module: 'NewsAPIClient' +2025-10-23 19:30:02.466 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 11:29:36 + → module: 'NewsAPIClient' +2025-10-23 19:30:02.466 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.84秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 19:30:02.493 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 19:30:02.493 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:30:11.629 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:30:11 + → module: 'TaskScheduler' +2025-10-23 19:30:11.629 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:30:21.637 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:30:21 + → module: 'TaskScheduler' +2025-10-23 19:30:21.637 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:30:31.660 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:30:31 + → module: 'TaskScheduler' +2025-10-23 19:30:31.660 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:30:41.681 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:30:41 + → module: 'TaskScheduler' +2025-10-23 19:30:41.681 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:30:51.689 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:30:51 + → module: 'TaskScheduler' +2025-10-23 19:30:51.689 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:31:01.710 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:31:01 + → module: 'TaskScheduler' +2025-10-23 19:31:01.710 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:31:11.720 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:31:11 + → module: 'TaskScheduler' +2025-10-23 19:31:11.720 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:31:21.729 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:31:21 + → module: 'TaskScheduler' +2025-10-23 19:31:21.729 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:31:31.736 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:31:31 + → module: 'TaskScheduler' +2025-10-23 19:31:31.737 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:31:41.764 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:31:41 + → module: 'TaskScheduler' +2025-10-23 19:31:41.764 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:31:51.796 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:31:51 + → module: 'TaskScheduler' +2025-10-23 19:31:51.796 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:32:01.804 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:32:01 + → module: 'TaskScheduler' +2025-10-23 19:32:01.804 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:32:11.830 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:32:11 + → module: 'TaskScheduler' +2025-10-23 19:32:11.830 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:32:21.859 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:32:21 + → module: 'TaskScheduler' +2025-10-23 19:32:21.859 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:32:31.887 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:32:31 + → module: 'TaskScheduler' +2025-10-23 19:32:31.887 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:32:41.909 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:32:41 + → module: 'TaskScheduler' +2025-10-23 19:32:41.909 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:32:51.917 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:32:51 + → module: 'TaskScheduler' +2025-10-23 19:32:51.917 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:33:01.935 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:33:01 + → module: 'TaskScheduler' +2025-10-23 19:33:01.935 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:33:11.944 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:33:11 + → module: 'TaskScheduler' +2025-10-23 19:33:11.944 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:33:21.952 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:33:21 + → module: 'TaskScheduler' +2025-10-23 19:33:21.953 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:33:31.985 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:33:31 + → module: 'TaskScheduler' +2025-10-23 19:33:31.985 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:33:42.014 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:33:42 + → module: 'TaskScheduler' +2025-10-23 19:33:42.014 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:33:52.022 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:33:52 + → module: 'TaskScheduler' +2025-10-23 19:33:52.022 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:34:02.046 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:34:02 + → module: 'TaskScheduler' +2025-10-23 19:34:02.046 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:34:12.054 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:34:12 + → module: 'TaskScheduler' +2025-10-23 19:34:12.054 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:34:22.063 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:34:22 + → module: 'TaskScheduler' +2025-10-23 19:34:22.063 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:34:32.070 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:34:32 + → module: 'TaskScheduler' +2025-10-23 19:34:32.070 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:34:42.095 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:34:42 + → module: 'TaskScheduler' +2025-10-23 19:34:42.095 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:34:52.103 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:34:52 + → module: 'TaskScheduler' +2025-10-23 19:34:52.103 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:35:02.111 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:35:02 + → module: 'TaskScheduler' +2025-10-23 19:35:02.111 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:35:02.119 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:35:02.144 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 19:35:02.145 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:35:02.145 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 19:35:02.146 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 19:35:02.146 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 19:35:02.149 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 19:35:02.171 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 19:35:02.171 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 19:35:02.172 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 11:29:36 + → module: 'NewsAPIClient' +2025-10-23 19:35:02.172 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 11:29:36 + → module: 'NewsAPIClient' +2025-10-23 19:35:02.172 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 19:35:02.608 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:35:02.621 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:35:02.646 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:35:03.020 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:35:03.022 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 19:35:03.023 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.85秒 + → module: 'NewsAPIClient' +2025-10-23 19:35:03.023 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 19:35:03.024 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 19:35:03.025 | DEBUG | rss_subscriptions:235 - 处理条目 1: 东西问丨意大利汉学家里卡多·波佐:如何通过文明互鉴促进全球现代化? + → module: 'NewsAPIClient' +2025-10-23 19:35:03.040 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 19:35:03.041 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 19:35:03.042 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 19:35:03.063 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 19:35:03.064 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 19:35:03.064 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 19:35:03.064 | DEBUG | rss_subscriptions:235 - 处理条目 1: 莫迪或缺席东盟峰会 无缘与特朗普会面 + → module: 'NewsAPIClient' +2025-10-23 19:35:03.087 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 19:35:03.088 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 19:35:03.090 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 19:35:03.096 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 19:35:03.098 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 19:35:03.098 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 19:35:03.098 | DEBUG | rss_subscriptions:235 - 处理条目 1: 浙江龙泉以“六个品质”擘画现代版“富春山居图” + → module: 'NewsAPIClient' +2025-10-23 19:35:03.099 | DEBUG | rss_subscriptions:235 - 处理条目 2: 公共服务一体化特写:“加双筷子”里的温情 + → module: 'NewsAPIClient' +2025-10-23 19:35:03.099 | DEBUG | rss_subscriptions:235 - 处理条目 3: 东西问丨意大利汉学家里卡多·波佐:如何通过文明互鉴促进全球现代化? + → module: 'NewsAPIClient' +2025-10-23 19:35:03.099 | DEBUG | rss_subscriptions:235 - 处理条目 4: 莫迪或缺席东盟峰会 无缘与特朗普会面 + → module: 'NewsAPIClient' +2025-10-23 19:35:03.119 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 19:35:03.122 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 19:35:03.123 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 4 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 19:35:03.139 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 2 + → error_message: "Duplicate entry '东西问丨意大利汉学家里卡多·波佐:如何通过æ\x96' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '东西问丨意大利汉学家里卡多·波佐:如何通过文明互鉴促进全球现代化?...', '文章链接': 'http://www.chinanews.com/gn/2025/10-23/10503409.shtml...', '文章摘要': '中新社济南10月23日电 题:如何通过文明互鉴促进全球现代化?...', '发布时间': '2025-10-23 11:30:28...', ... +2025-10-23 19:35:03.143 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 3 + → error_message: "Duplicate entry '莫迪或缺席东盟峰会 无缘与特朗普会面-2025-10-23 ' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '莫迪或缺席东盟峰会 无缘与特朗普会面...', '文章链接': 'http://www.chinanews.com/cj/2025/10-23/10503405.shtml...', '文章摘要': '中新网10月23日电(记者 宫宏宇)据彭博社等外媒报道,印度总理莫迪将不会出席本月即将在马来西亚吉隆坡举行的东盟峰会,这意味着他将无缘与美国总统特朗普线下会面。印度外交部长... +2025-10-23 19:35:03.144 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 4 + → total_inserted: 2 + → total_duplicates: 2 + → total_failed: 0 + → failed_records_count: 2 +2025-10-23 19:35:03.144 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 2, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '东西问丨意大利汉学家里卡多·波佐:如何通过æ\x96' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 3, 'type':... + → detailed_failed_records: [{'index': 2, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '东西问丨意大利汉学家里卡多·波佐:如何通过æ\x96' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '东... +2025-10-23 19:35:03.145 | INFO | rss_subscriptions:259 - 成功写入 2/4 条记录 + → module: 'NewsAPIClient' +2025-10-23 19:35:03.146 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 11:34:02 + → module: 'NewsAPIClient' +2025-10-23 19:35:03.146 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 11:34:02 + → module: 'NewsAPIClient' +2025-10-23 19:35:03.147 | INFO | task_scheduler:289 - 任务执行完成,耗时: 1.00秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 19:35:03.171 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 19:35:03.171 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:35:12.147 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:35:12 + → module: 'TaskScheduler' +2025-10-23 19:35:12.147 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:35:22.171 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:35:22 + → module: 'TaskScheduler' +2025-10-23 19:35:22.171 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:35:32.179 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:35:32 + → module: 'TaskScheduler' +2025-10-23 19:35:32.179 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:35:42.188 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:35:42 + → module: 'TaskScheduler' +2025-10-23 19:35:42.188 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:35:52.197 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:35:52 + → module: 'TaskScheduler' +2025-10-23 19:35:52.197 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:36:02.228 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:36:02 + → module: 'TaskScheduler' +2025-10-23 19:36:02.228 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:36:12.235 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:36:12 + → module: 'TaskScheduler' +2025-10-23 19:36:12.235 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:36:22.266 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:36:22 + → module: 'TaskScheduler' +2025-10-23 19:36:22.266 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:36:32.273 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:36:32 + → module: 'TaskScheduler' +2025-10-23 19:36:32.273 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:36:42.281 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:36:42 + → module: 'TaskScheduler' +2025-10-23 19:36:42.282 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:36:52.313 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:36:52 + → module: 'TaskScheduler' +2025-10-23 19:36:52.313 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:37:02.321 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:37:02 + → module: 'TaskScheduler' +2025-10-23 19:37:02.321 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:37:12.342 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:37:12 + → module: 'TaskScheduler' +2025-10-23 19:37:12.342 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:37:22.371 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:37:22 + → module: 'TaskScheduler' +2025-10-23 19:37:22.371 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:37:32.380 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:37:32 + → module: 'TaskScheduler' +2025-10-23 19:37:32.380 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:37:42.405 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:37:42 + → module: 'TaskScheduler' +2025-10-23 19:37:42.405 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:37:52.430 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:37:52 + → module: 'TaskScheduler' +2025-10-23 19:37:52.430 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:38:02.463 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:38:02 + → module: 'TaskScheduler' +2025-10-23 19:38:02.463 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:38:12.470 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:38:12 + → module: 'TaskScheduler' +2025-10-23 19:38:12.470 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:38:22.477 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:38:22 + → module: 'TaskScheduler' +2025-10-23 19:38:22.477 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:38:32.484 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:38:32 + → module: 'TaskScheduler' +2025-10-23 19:38:32.484 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:38:42.491 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:38:42 + → module: 'TaskScheduler' +2025-10-23 19:38:42.491 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:38:52.498 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:38:52 + → module: 'TaskScheduler' +2025-10-23 19:38:52.498 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:39:02.506 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:39:02 + → module: 'TaskScheduler' +2025-10-23 19:39:02.506 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:39:12.515 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:39:12 + → module: 'TaskScheduler' +2025-10-23 19:39:12.515 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:39:22.523 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:39:22 + → module: 'TaskScheduler' +2025-10-23 19:39:22.523 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:39:32.531 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:39:32 + → module: 'TaskScheduler' +2025-10-23 19:39:32.531 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:39:42.539 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:39:42 + → module: 'TaskScheduler' +2025-10-23 19:39:42.539 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:39:52.546 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:39:52 + → module: 'TaskScheduler' +2025-10-23 19:39:52.546 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:40:02.554 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:40:02 + → module: 'TaskScheduler' +2025-10-23 19:40:02.554 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:40:02.564 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:40:02.586 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 19:40:02.587 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:40:02.587 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 19:40:02.587 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 19:40:02.588 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 19:40:02.591 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 19:40:02.595 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 19:40:02.595 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 19:40:02.595 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 11:34:02 + → module: 'NewsAPIClient' +2025-10-23 19:40:02.596 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 11:34:02 + → module: 'NewsAPIClient' +2025-10-23 19:40:02.596 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 19:40:03.041 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:40:03.052 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:40:03.091 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:40:03.367 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:40:03.369 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 19:40:03.369 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.77秒 + → module: 'NewsAPIClient' +2025-10-23 19:40:03.370 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 19:40:03.371 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 19:40:03.373 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 19:40:03.373 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 19:40:03.375 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 11:34:02 + → module: 'NewsAPIClient' +2025-10-23 19:40:03.375 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 11:34:02 + → module: 'NewsAPIClient' +2025-10-23 19:40:03.375 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.79秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 19:40:03.388 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 19:40:03.389 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:40:12.589 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:40:12 + → module: 'TaskScheduler' +2025-10-23 19:40:12.589 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:40:22.597 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:40:22 + → module: 'TaskScheduler' +2025-10-23 19:40:22.597 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:40:32.605 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:40:32 + → module: 'TaskScheduler' +2025-10-23 19:40:32.605 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:40:42.613 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:40:42 + → module: 'TaskScheduler' +2025-10-23 19:40:42.613 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:40:52.644 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:40:52 + → module: 'TaskScheduler' +2025-10-23 19:40:52.644 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:41:02.651 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:41:02 + → module: 'TaskScheduler' +2025-10-23 19:41:02.652 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:41:12.658 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:41:12 + → module: 'TaskScheduler' +2025-10-23 19:41:12.658 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:41:22.686 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:41:22 + → module: 'TaskScheduler' +2025-10-23 19:41:22.686 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:41:32.713 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:41:32 + → module: 'TaskScheduler' +2025-10-23 19:41:32.713 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:41:42.744 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:41:42 + → module: 'TaskScheduler' +2025-10-23 19:41:42.744 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:41:52.752 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:41:52 + → module: 'TaskScheduler' +2025-10-23 19:41:52.752 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:42:02.762 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:42:02 + → module: 'TaskScheduler' +2025-10-23 19:42:02.762 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:42:12.770 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:42:12 + → module: 'TaskScheduler' +2025-10-23 19:42:12.771 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:42:22.804 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:42:22 + → module: 'TaskScheduler' +2025-10-23 19:42:22.804 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:42:32.828 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:42:32 + → module: 'TaskScheduler' +2025-10-23 19:42:32.828 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:42:42.856 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:42:42 + → module: 'TaskScheduler' +2025-10-23 19:42:42.856 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:42:52.864 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:42:52 + → module: 'TaskScheduler' +2025-10-23 19:42:52.864 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:43:02.891 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:43:02 + → module: 'TaskScheduler' +2025-10-23 19:43:02.891 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:43:12.901 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:43:12 + → module: 'TaskScheduler' +2025-10-23 19:43:12.901 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:43:22.909 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:43:22 + → module: 'TaskScheduler' +2025-10-23 19:43:22.909 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:43:32.917 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:43:32 + → module: 'TaskScheduler' +2025-10-23 19:43:32.918 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:43:42.926 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:43:42 + → module: 'TaskScheduler' +2025-10-23 19:43:42.927 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:43:52.952 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:43:52 + → module: 'TaskScheduler' +2025-10-23 19:43:52.952 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:44:02.960 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:44:02 + → module: 'TaskScheduler' +2025-10-23 19:44:02.960 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:44:12.967 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:44:12 + → module: 'TaskScheduler' +2025-10-23 19:44:12.967 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:44:22.978 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:44:22 + → module: 'TaskScheduler' +2025-10-23 19:44:22.978 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:44:32.985 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:44:32 + → module: 'TaskScheduler' +2025-10-23 19:44:32.985 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:44:42.993 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:44:42 + → module: 'TaskScheduler' +2025-10-23 19:44:42.994 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:44:53.012 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:44:53 + → module: 'TaskScheduler' +2025-10-23 19:44:53.012 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:45:03.020 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:45:03 + → module: 'TaskScheduler' +2025-10-23 19:45:03.020 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:45:03.028 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:45:03.078 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 19:45:03.079 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:45:03.079 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 19:45:03.079 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 19:45:03.079 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 19:45:03.083 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 19:45:03.086 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 19:45:03.086 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 19:45:03.087 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 11:34:02 + → module: 'NewsAPIClient' +2025-10-23 19:45:03.087 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 11:34:02 + → module: 'NewsAPIClient' +2025-10-23 19:45:03.088 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 19:45:03.503 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:45:03.523 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:45:03.536 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:45:03.850 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:45:03.851 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 19:45:03.852 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.76秒 + → module: 'NewsAPIClient' +2025-10-23 19:45:03.852 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 19:45:03.852 | DEBUG | rss_subscriptions:235 - 处理条目 1: 第24届汕头·澄海国际玩具礼品博览会举行 + → module: 'NewsAPIClient' +2025-10-23 19:45:03.852 | DEBUG | rss_subscriptions:235 - 处理条目 2: 第七届“《巴黎协定》之友”高级别对话会在海南保亭举行 + → module: 'NewsAPIClient' +2025-10-23 19:45:03.853 | DEBUG | rss_subscriptions:235 - 处理条目 3: 杭州制冷展涌动全球“采购热” 汇聚106个国家和地区客商 + → module: 'NewsAPIClient' +2025-10-23 19:45:03.856 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 19:45:03.858 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 19:45:03.858 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 3 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 19:45:03.876 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 3 + → total_inserted: 3 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 19:45:03.877 | INFO | rss_subscriptions:259 - 成功写入 3/3 条记录 + → module: 'NewsAPIClient' +2025-10-23 19:45:03.878 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 19:45:03.878 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 19:45:03.879 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 19:45:03.879 | DEBUG | rss_subscriptions:235 - 处理条目 1: 商务印书馆推出《古诗文常用名句辞典》构建古汉语完整知识链 + → module: 'NewsAPIClient' +2025-10-23 19:45:03.879 | DEBUG | rss_subscriptions:235 - 处理条目 2: 第24届汕头·澄海国际玩具礼品博览会举行 + → module: 'NewsAPIClient' +2025-10-23 19:45:03.880 | DEBUG | rss_subscriptions:235 - 处理条目 3: 香港举行2025年立法会换届选举启动礼 + → module: 'NewsAPIClient' +2025-10-23 19:45:03.880 | DEBUG | rss_subscriptions:235 - 处理条目 4: 第七届“《巴黎协定》之友”高级别对话会在海南保亭举行 + → module: 'NewsAPIClient' +2025-10-23 19:45:03.880 | DEBUG | rss_subscriptions:235 - 处理条目 5: 东北地区青铜文化巡礼展在沈阳举办 + → module: 'NewsAPIClient' +2025-10-23 19:45:03.880 | DEBUG | rss_subscriptions:235 - 处理条目 6: 2025年长江干线水上保障综合演练在武汉举行 + → module: 'NewsAPIClient' +2025-10-23 19:45:03.880 | DEBUG | rss_subscriptions:235 - 处理条目 7: 安徽黟县:奇墅湖晨雾如画 + → module: 'NewsAPIClient' +2025-10-23 19:45:03.881 | DEBUG | rss_subscriptions:235 - 处理条目 8: 浙江丽水古堰画乡:艺术赋能乡村 生态旅游引客来 + → module: 'NewsAPIClient' +2025-10-23 19:45:03.881 | DEBUG | rss_subscriptions:235 - 处理条目 9: 杭州制冷展涌动全球“采购热” 汇聚106个国家和地区客商 + → module: 'NewsAPIClient' +2025-10-23 19:45:03.884 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 19:45:03.886 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 19:45:03.887 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 9 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 19:45:03.897 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 1 + → error_message: "Duplicate entry '第24届汕头·澄海国际玩具礼品博览会举行-2025-10-' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '第24届汕头·澄海国际玩具礼品博览会举行...', '文章链接': 'http://www.chinanews.com/cj/2025/10-23/10503397.shtml...', '文章摘要': '中新网汕头10月23日电 (记者 李怡青)第24届汕头·澄海国际玩具礼品博览会(以下简称“玩博会”)10月23日至26日在广东汕头举行,海内外2000多个品牌25万款玩... +2025-10-23 19:45:03.905 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 3 + → error_message: "Duplicate entry '第七届“《巴黎协定》之友”高级别对话会在海å' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '第七届“《巴黎协定》之友”高级别对话会在海南保亭举行...', '文章链接': 'http://www.chinanews.com/cj/2025/10-23/10503379.shtml...', '文章摘要': '中新网海南保亭10月23日电 (张月和)据清华大学气候变化与可持续发展研究院消息,第七届“《巴黎协定》之友”高级别对话会于10月21至22日在海南保亭举行。... +2025-10-23 19:45:03.928 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 8 + → error_message: "Duplicate entry '杭州制冷展涌动全球“采购热” 汇聚106个国家和' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '杭州制冷展涌动全球“采购热” 汇聚106个国家和地区客商...', '文章链接': 'http://www.chinanews.com/cj/2025/10-23/10503408.shtml...', '文章摘要': '中新网杭州10月23日电(蓝伊旎)10月23日,杭州大会展中心内人流如织,从事制冷业配套服务的刘勋正陪同合作过三十余年的斯里兰卡客商穿梭于各个展位,一边... +2025-10-23 19:45:03.931 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 9 + → total_inserted: 6 + → total_duplicates: 3 + → total_failed: 0 + → failed_records_count: 3 +2025-10-23 19:45:03.931 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '第24届汕头·澄海国际玩具礼品博览会举行-2025-10-' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 3, 'typ... + → detailed_failed_records: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '第24届汕头·澄海国际玩具礼品博览会举行-2025-10-' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题':... +2025-10-23 19:45:03.932 | INFO | rss_subscriptions:259 - 成功写入 6/9 条记录 + → module: 'NewsAPIClient' +2025-10-23 19:45:03.933 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 11:40:57 + → module: 'NewsAPIClient' +2025-10-23 19:45:03.933 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 11:40:57 + → module: 'NewsAPIClient' +2025-10-23 19:45:03.933 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.85秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 19:45:03.953 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 19:45:03.953 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:45:13.081 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:45:13 + → module: 'TaskScheduler' +2025-10-23 19:45:13.081 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:45:23.103 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:45:23 + → module: 'TaskScheduler' +2025-10-23 19:45:23.103 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:45:33.111 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:45:33 + → module: 'TaskScheduler' +2025-10-23 19:45:33.111 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:45:43.118 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:45:43 + → module: 'TaskScheduler' +2025-10-23 19:45:43.119 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:45:53.140 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:45:53 + → module: 'TaskScheduler' +2025-10-23 19:45:53.140 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:46:03.149 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:46:03 + → module: 'TaskScheduler' +2025-10-23 19:46:03.149 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:46:13.178 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:46:13 + → module: 'TaskScheduler' +2025-10-23 19:46:13.178 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:46:23.206 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:46:23 + → module: 'TaskScheduler' +2025-10-23 19:46:23.206 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:46:33.214 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:46:33 + → module: 'TaskScheduler' +2025-10-23 19:46:33.215 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:46:43.239 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:46:43 + → module: 'TaskScheduler' +2025-10-23 19:46:43.239 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:46:53.247 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:46:53 + → module: 'TaskScheduler' +2025-10-23 19:46:53.247 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:47:03.255 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:47:03 + → module: 'TaskScheduler' +2025-10-23 19:47:03.255 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:47:13.263 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:47:13 + → module: 'TaskScheduler' +2025-10-23 19:47:13.263 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:47:23.291 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:47:23 + → module: 'TaskScheduler' +2025-10-23 19:47:23.291 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:47:33.318 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:47:33 + → module: 'TaskScheduler' +2025-10-23 19:47:33.318 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:47:43.330 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:47:43 + → module: 'TaskScheduler' +2025-10-23 19:47:43.330 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:47:53.338 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:47:53 + → module: 'TaskScheduler' +2025-10-23 19:47:53.339 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:48:03.346 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:48:03 + → module: 'TaskScheduler' +2025-10-23 19:48:03.347 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:48:13.354 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:48:13 + → module: 'TaskScheduler' +2025-10-23 19:48:13.354 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:48:23.386 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:48:23 + → module: 'TaskScheduler' +2025-10-23 19:48:23.386 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:48:33.394 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:48:33 + → module: 'TaskScheduler' +2025-10-23 19:48:33.394 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:48:43.425 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:48:43 + → module: 'TaskScheduler' +2025-10-23 19:48:43.425 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:48:53.433 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:48:53 + → module: 'TaskScheduler' +2025-10-23 19:48:53.433 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:49:03.455 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:49:03 + → module: 'TaskScheduler' +2025-10-23 19:49:03.455 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:49:13.464 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:49:13 + → module: 'TaskScheduler' +2025-10-23 19:49:13.464 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:49:23.473 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:49:23 + → module: 'TaskScheduler' +2025-10-23 19:49:23.473 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:49:33.496 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:49:33 + → module: 'TaskScheduler' +2025-10-23 19:49:33.496 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:49:43.503 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:49:43 + → module: 'TaskScheduler' +2025-10-23 19:49:43.503 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:49:53.510 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:49:53 + → module: 'TaskScheduler' +2025-10-23 19:49:53.510 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:50:03.518 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:50:03 + → module: 'TaskScheduler' +2025-10-23 19:50:03.518 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:50:03.528 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:50:03.550 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 19:50:03.550 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:50:03.550 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 19:50:03.551 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 19:50:03.551 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 19:50:03.554 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 19:50:03.580 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 19:50:03.581 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 19:50:03.582 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 11:40:57 + → module: 'NewsAPIClient' +2025-10-23 19:50:03.582 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 11:40:57 + → module: 'NewsAPIClient' +2025-10-23 19:50:03.582 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 19:50:03.969 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:50:03.982 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:50:03.993 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:50:04.279 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:50:04.281 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 19:50:04.281 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.70秒 + → module: 'NewsAPIClient' +2025-10-23 19:50:04.281 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 19:50:04.282 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 19:50:04.283 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 19:50:04.283 | DEBUG | rss_subscriptions:235 - 处理条目 1: 第八届进博会展品锡兰红茶抵沪 + → module: 'NewsAPIClient' +2025-10-23 19:50:04.287 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 19:50:04.288 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 19:50:04.289 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 19:50:04.297 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 19:50:04.298 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 19:50:04.298 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 19:50:04.298 | DEBUG | rss_subscriptions:235 - 处理条目 1: 千余艺术精品汇聚第12届嘉德艺术周展开跨文明对话 + → module: 'NewsAPIClient' +2025-10-23 19:50:04.299 | DEBUG | rss_subscriptions:235 - 处理条目 2: 第八届进博会展品锡兰红茶抵沪 + → module: 'NewsAPIClient' +2025-10-23 19:50:04.299 | DEBUG | rss_subscriptions:235 - 处理条目 3: 2025年青海省“国际雪豹日”宣传活动启动 + → module: 'NewsAPIClient' +2025-10-23 19:50:04.302 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 19:50:04.303 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 19:50:04.304 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 3 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 19:50:04.314 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 1 + → error_message: "Duplicate entry '第八届进博会展品锡兰红茶抵沪-2025-10-23 11:43:57' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '第八届进博会展品锡兰红茶抵沪...', '文章链接': 'http://www.chinanews.com/cj/2025/10-23/10503422.shtml...', '文章摘要': '中新网上海10月23日电 (陈静 宫兴)23日午后,搭载第八届进博会海运展品——锡兰红茶的集装箱货轮“新上海”轮靠泊上海外高桥口岸。上海边检总站外高桥边检站联合口岸单位开通进博展品... +2025-10-23 19:50:04.321 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 3 + → total_inserted: 2 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-23 19:50:04.321 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '第八届进博会展品锡兰红茶抵沪-2025-10-23 11:43:57' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '第八届进博会展品锡兰红茶抵沪-2025-10-23 11:43:57' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文... +2025-10-23 19:50:04.322 | INFO | rss_subscriptions:259 - 成功写入 2/3 条记录 + → module: 'NewsAPIClient' +2025-10-23 19:50:04.322 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 11:45:15 + → module: 'NewsAPIClient' +2025-10-23 19:50:04.323 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 11:45:15 + → module: 'NewsAPIClient' +2025-10-23 19:50:04.323 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.77秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 19:50:04.331 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 19:50:04.332 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:50:13.552 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:50:13 + → module: 'TaskScheduler' +2025-10-23 19:50:13.552 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:50:23.560 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:50:23 + → module: 'TaskScheduler' +2025-10-23 19:50:23.560 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:50:33.567 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:50:33 + → module: 'TaskScheduler' +2025-10-23 19:50:33.567 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:50:43.593 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:50:43 + → module: 'TaskScheduler' +2025-10-23 19:50:43.593 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:50:53.613 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:50:53 + → module: 'TaskScheduler' +2025-10-23 19:50:53.613 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:51:03.622 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:51:03 + → module: 'TaskScheduler' +2025-10-23 19:51:03.622 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:51:13.643 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:51:13 + → module: 'TaskScheduler' +2025-10-23 19:51:13.643 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:51:23.650 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:51:23 + → module: 'TaskScheduler' +2025-10-23 19:51:23.650 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:51:33.659 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:51:33 + → module: 'TaskScheduler' +2025-10-23 19:51:33.659 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:51:43.667 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:51:43 + → module: 'TaskScheduler' +2025-10-23 19:51:43.667 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:51:53.678 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:51:53 + → module: 'TaskScheduler' +2025-10-23 19:51:53.678 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:52:03.688 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:52:03 + → module: 'TaskScheduler' +2025-10-23 19:52:03.688 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:52:13.696 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:52:13 + → module: 'TaskScheduler' +2025-10-23 19:52:13.696 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:52:23.703 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:52:23 + → module: 'TaskScheduler' +2025-10-23 19:52:23.703 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:52:33.711 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:52:33 + → module: 'TaskScheduler' +2025-10-23 19:52:33.711 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:52:43.719 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:52:43 + → module: 'TaskScheduler' +2025-10-23 19:52:43.719 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:52:53.727 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:52:53 + → module: 'TaskScheduler' +2025-10-23 19:52:53.727 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:53:03.734 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:53:03 + → module: 'TaskScheduler' +2025-10-23 19:53:03.734 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:53:13.744 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:53:13 + → module: 'TaskScheduler' +2025-10-23 19:53:13.744 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:53:23.770 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:53:23 + → module: 'TaskScheduler' +2025-10-23 19:53:23.770 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:53:33.778 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:53:33 + → module: 'TaskScheduler' +2025-10-23 19:53:33.778 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:53:43.787 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:53:43 + → module: 'TaskScheduler' +2025-10-23 19:53:43.787 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:53:53.795 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:53:53 + → module: 'TaskScheduler' +2025-10-23 19:53:53.795 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:54:03.803 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:54:03 + → module: 'TaskScheduler' +2025-10-23 19:54:03.803 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:54:13.813 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:54:13 + → module: 'TaskScheduler' +2025-10-23 19:54:13.813 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:54:23.821 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:54:23 + → module: 'TaskScheduler' +2025-10-23 19:54:23.821 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:54:33.829 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:54:33 + → module: 'TaskScheduler' +2025-10-23 19:54:33.829 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:54:43.837 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:54:43 + → module: 'TaskScheduler' +2025-10-23 19:54:43.837 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:54:53.847 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:54:53 + → module: 'TaskScheduler' +2025-10-23 19:54:53.847 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:55:03.857 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:55:03 + → module: 'TaskScheduler' +2025-10-23 19:55:03.857 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:55:03.865 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:55:03.886 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 19:55:03.886 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:55:03.887 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 19:55:03.887 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 19:55:03.887 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 19:55:03.912 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 19:55:03.927 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 19:55:03.928 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 19:55:03.928 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 11:45:15 + → module: 'NewsAPIClient' +2025-10-23 19:55:03.928 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 11:45:15 + → module: 'NewsAPIClient' +2025-10-23 19:55:03.928 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 19:55:04.336 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:55:04.357 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:55:04.368 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:55:04.662 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 19:55:04.663 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 19:55:04.664 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.74秒 + → module: 'NewsAPIClient' +2025-10-23 19:55:04.664 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 19:55:04.666 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 19:55:04.666 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 19:55:04.666 | DEBUG | rss_subscriptions:235 - 处理条目 1: 第三届东北亚金融大会在沈阳开幕 + → module: 'NewsAPIClient' +2025-10-23 19:55:04.666 | DEBUG | rss_subscriptions:235 - 处理条目 2: 沈阳启动建设国际生命健康城 打造辐射东北亚的医药产业创新高地 + → module: 'NewsAPIClient' +2025-10-23 19:55:04.669 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 19:55:04.671 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 19:55:04.673 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 2 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 19:55:04.713 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 2 + → total_inserted: 2 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 19:55:04.715 | INFO | rss_subscriptions:259 - 成功写入 2/2 条记录 + → module: 'NewsAPIClient' +2025-10-23 19:55:04.716 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 19:55:04.717 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 11:50:11 + → module: 'NewsAPIClient' +2025-10-23 19:55:04.717 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 11:50:11 + → module: 'NewsAPIClient' +2025-10-23 19:55:04.718 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.83秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 19:55:04.742 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 19:55:04.742 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 19:55:13.888 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:55:13 + → module: 'TaskScheduler' +2025-10-23 19:55:13.888 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:55:23.896 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:55:23 + → module: 'TaskScheduler' +2025-10-23 19:55:23.896 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:55:33.926 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:55:33 + → module: 'TaskScheduler' +2025-10-23 19:55:33.926 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:55:43.933 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:55:43 + → module: 'TaskScheduler' +2025-10-23 19:55:43.933 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:55:53.940 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:55:53 + → module: 'TaskScheduler' +2025-10-23 19:55:53.940 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:56:03.949 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:56:03 + → module: 'TaskScheduler' +2025-10-23 19:56:03.949 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:56:13.957 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:56:13 + → module: 'TaskScheduler' +2025-10-23 19:56:13.957 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:56:23.989 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:56:23 + → module: 'TaskScheduler' +2025-10-23 19:56:23.989 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:56:34.012 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:56:34 + → module: 'TaskScheduler' +2025-10-23 19:56:34.012 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:56:44.020 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:56:44 + → module: 'TaskScheduler' +2025-10-23 19:56:44.020 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:56:54.028 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:56:54 + → module: 'TaskScheduler' +2025-10-23 19:56:54.028 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:57:04.035 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:57:04 + → module: 'TaskScheduler' +2025-10-23 19:57:04.036 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:57:14.057 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:57:14 + → module: 'TaskScheduler' +2025-10-23 19:57:14.057 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:57:24.065 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:57:24 + → module: 'TaskScheduler' +2025-10-23 19:57:24.065 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:57:34.098 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:57:34 + → module: 'TaskScheduler' +2025-10-23 19:57:34.098 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:57:44.106 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:57:44 + → module: 'TaskScheduler' +2025-10-23 19:57:44.106 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:57:54.113 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:57:54 + → module: 'TaskScheduler' +2025-10-23 19:57:54.113 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:58:04.135 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:58:04 + → module: 'TaskScheduler' +2025-10-23 19:58:04.135 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:58:14.143 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:58:14 + → module: 'TaskScheduler' +2025-10-23 19:58:14.143 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:58:24.150 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:58:24 + → module: 'TaskScheduler' +2025-10-23 19:58:24.150 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:58:34.160 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:58:34 + → module: 'TaskScheduler' +2025-10-23 19:58:34.160 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:58:44.167 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:58:44 + → module: 'TaskScheduler' +2025-10-23 19:58:44.167 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:58:54.174 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:58:54 + → module: 'TaskScheduler' +2025-10-23 19:58:54.174 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:59:04.191 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:59:04 + → module: 'TaskScheduler' +2025-10-23 19:59:04.191 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:59:14.224 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:59:14 + → module: 'TaskScheduler' +2025-10-23 19:59:14.224 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:59:24.246 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:59:24 + → module: 'TaskScheduler' +2025-10-23 19:59:24.246 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:59:34.253 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:59:34 + → module: 'TaskScheduler' +2025-10-23 19:59:34.253 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:59:44.261 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:59:44 + → module: 'TaskScheduler' +2025-10-23 19:59:44.261 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 19:59:54.290 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 19:59:54 + → module: 'TaskScheduler' +2025-10-23 19:59:54.290 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:00:04.298 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:00:04 + → module: 'TaskScheduler' +2025-10-23 20:00:04.298 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:00:04.309 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:00:04.309 | INFO | task_scheduler:165 - 开始执行任务: RSS基于规则数据处理 + → module: 'TaskScheduler' + → task_id: 2 + → task_name: 'RSS基于规则数据处理' +2025-10-23 20:00:04.318 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 20:00:04.318 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 2 + → task_name: 'RSS基于规则数据处理' +2025-10-23 20:00:04.320 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 20:00:04.320 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:00:04.320 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 20:00:04.320 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 2 + → 成功: 2 + → 失败: 0 +2025-10-23 20:00:04.320 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 20:00:04.327 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 20:00:04.334 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 20:00:04.334 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 20:00:04.335 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 11:50:11 + → module: 'NewsAPIClient' +2025-10-23 20:00:04.336 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 11:50:11 + → module: 'NewsAPIClient' +2025-10-23 20:00:04.337 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 20:00:04.830 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:00:04.857 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:00:04.876 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:00:04.971 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'processors.processor_rss_data' + → task_id: 2 +2025-10-23 20:00:04.971 | INFO | processor_rss_data:65 - RSS数据处理器初始化完成 + → module: 'RSSDataProcessor' +2025-10-23 20:00:04.971 | INFO | processor_rss_data:335 - 开始处理RSS数据... + → module: 'RSSDataProcessor' +2025-10-23 20:00:04.972 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT id, 文章标题, 文章摘要, 发布时间, 来源URL, 文章链接\n FROM collector_rss_subscriptions\n WHERE 是否已处理 = 0\n ORDER BY 发布时间 DESC\n LIMIT %s\n ' +2025-10-23 20:00:04.997 | INFO | processor_rss_data:107 - 成功加载 79 条未处理的RSS数据 + → module: 'RSSDataProcessor' +2025-10-23 20:00:04.997 | INFO | processor_rss_data:146 - 成功加载停用词表,共 98 个词 + → module: 'RSSDataProcessor' +2025-10-23 20:00:04.998 | INFO | processor_rss_data:82 - 成功加载汽车后市场关键词,共 37 个 + → module: 'RSSDataProcessor' +2025-10-23 20:00:05.166 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:00:05.174 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 20:00:05.176 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.84秒 + → module: 'NewsAPIClient' +2025-10-23 20:00:05.179 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 20:00:05.182 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 20:00:05.184 | DEBUG | rss_subscriptions:235 - 处理条目 1: 国际大都市科技创新能力研究报告在沪发布 + → module: 'NewsAPIClient' +2025-10-23 20:00:05.184 | DEBUG | rss_subscriptions:235 - 处理条目 2: 南珠高铁玉岑段站前3标完成架梁任务 + → module: 'NewsAPIClient' +2025-10-23 20:00:05.202 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 20:00:05.211 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 20:00:05.213 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 2 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 20:00:05.233 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 2 + → total_inserted: 2 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 20:00:05.238 | INFO | rss_subscriptions:259 - 成功写入 2/2 条记录 + → module: 'NewsAPIClient' +2025-10-23 20:00:05.240 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 20:00:05.244 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 20:00:05.246 | DEBUG | rss_subscriptions:235 - 处理条目 1: 台湾暴发非洲猪瘟疫情 猪只禁宰或延长至15天 + → module: 'NewsAPIClient' +2025-10-23 20:00:05.246 | DEBUG | rss_subscriptions:235 - 处理条目 2: 国际大都市科技创新能力研究报告在沪发布 + → module: 'NewsAPIClient' +2025-10-23 20:00:05.247 | DEBUG | rss_subscriptions:235 - 处理条目 3: “大江论坛·两岸文化出版对话交流活动”在北京举行 + → module: 'NewsAPIClient' +2025-10-23 20:00:05.248 | DEBUG | rss_subscriptions:235 - 处理条目 4: 台胞携宝岛风味出摊 “小而美”市集香飘多地 + → module: 'NewsAPIClient' +2025-10-23 20:00:05.249 | DEBUG | rss_subscriptions:235 - 处理条目 5: 南珠高铁玉岑段站前3标完成架梁任务 + → module: 'NewsAPIClient' +2025-10-23 20:00:05.266 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 20:00:05.274 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 20:00:05.280 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 5 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 20:00:05.295 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 1 + → error_message: "Duplicate entry '国际大都市科技创新能力研究报告在沪发布-2025-1' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '国际大都市科技创新能力研究报告在沪发布...', '文章链接': 'http://www.chinanews.com/cj/2025/10-23/10503420.shtml...', '文章摘要': '中新网上海10月23日电 (记者 王笈)23日在沪举行的2025竞争情报上海论坛(SCIF2025)上,上海科学技术情报研究所发布《2025国际大都市科技创新能力评价》报... +2025-10-23 20:00:05.313 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 4 + → error_message: "Duplicate entry '南珠高铁玉岑段站前3标完成架梁任务-2025-10-23 11:' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '南珠高铁玉岑段站前3标完成架梁任务...', '文章链接': 'http://www.chinanews.com/cj/2025/10-23/10503367.shtml...', '文章摘要': '中新网梧州10月23日电(陆新健 贾笑 王威)10月23日,由广西交通投资集团投资建设、中国铁路南宁局集团有限公司代建、中铁四局承建的南珠高铁玉岑段义垌村跨益湛铁路特大桥... +2025-10-23 20:00:05.322 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 5 + → total_inserted: 3 + → total_duplicates: 2 + → total_failed: 0 + → failed_records_count: 2 +2025-10-23 20:00:05.324 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '国际大都市科技创新能力研究报告在沪发布-2025-1' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 4, 'type':... + → detailed_failed_records: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '国际大都市科技创新能力研究报告在沪发布-2025-1' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '国... +2025-10-23 20:00:05.331 | INFO | rss_subscriptions:259 - 成功写入 3/5 条记录 + → module: 'NewsAPIClient' +2025-10-23 20:00:05.342 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 11:57:08 + → module: 'NewsAPIClient' +2025-10-23 20:00:05.343 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 11:57:08 + → module: 'NewsAPIClient' +2025-10-23 20:00:05.345 | INFO | task_scheduler:289 - 任务执行完成,耗时: 1.03秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 20:00:05.366 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 20:00:05.370 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:00:06.186 | INFO | processor_rss_data:235 - 数据处理完成,共处理 79 条记录 + → module: 'RSSDataProcessor' +2025-10-23 20:00:06.188 | INFO | processor_rss_data:246 - 过滤出 4 条汽车后市场相关新闻 + → module: 'RSSDataProcessor' +2025-10-23 20:00:06.194 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 20:00:06.194 | DEBUG | mysql_agent:640 - 检查表是否存在 + → module: 'MySQLAgent(Windows)' + → 表: 'processed_rss_data' + → 存在: True +2025-10-23 20:00:06.196 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 processed_rss_data + → module: 'MySQLAgent(Windows)' +2025-10-23 20:00:06.197 | DEBUG | mysql_agent:182 - 表 processed_rss_data 包含以下列:['id', '文章标题', '文章摘要', '发布时间', '来源URL', '文章链接', '分词结果', '相关度分数', '是否汽车相关', '处理时间', '创建时间', '更新时间'] + → module: 'MySQLAgent(Windows)' +2025-10-23 20:00:06.200 | DEBUG | mysql_agent:208 - 表 processed_rss_data 的过滤后DataFrame:共 4 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 20:00:06.245 | INFO | mysql_agent:294 - 表 processed_rss_data 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 4 + → total_inserted: 4 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 20:00:06.246 | INFO | processor_rss_data:283 - 成功保存 4 条处理结果到数据库 + → module: 'RSSDataProcessor' +2025-10-23 20:00:06.265 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 79 +2025-10-23 20:00:06.266 | INFO | processor_rss_data:129 - 成功标记 79 条数据为已处理 + → module: 'RSSDataProcessor' +2025-10-23 20:00:06.266 | INFO | processor_rss_data:372 - RSS数据处理完成 + → module: 'RSSDataProcessor' + → total_articles: 79 + → filtered_articles: 4 + → filter_rate: 0.05063291139240506 + → processing_time: '2025-10-23 20:00:06' + → save_success: True + → mark_success: True +2025-10-23 20:00:06.267 | INFO | task_scheduler:289 - 任务执行完成,耗时: 1.95秒 + → module: 'processors.processor_rss_data' + → task_id: 2 +2025-10-23 20:00:06.293 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 20:00:06.293 | INFO | task_scheduler:230 - 任务执行成功: RSS基于规则数据处理 + → module: 'TaskScheduler' + → task_id: 2 + → task_name: 'RSS基于规则数据处理' +2025-10-23 20:00:14.322 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:00:14 + → module: 'TaskScheduler' +2025-10-23 20:00:14.322 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:00:24.330 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:00:24 + → module: 'TaskScheduler' +2025-10-23 20:00:24.331 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:00:34.361 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:00:34 + → module: 'TaskScheduler' +2025-10-23 20:00:34.361 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:00:44.370 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:00:44 + → module: 'TaskScheduler' +2025-10-23 20:00:44.370 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:00:54.378 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:00:54 + → module: 'TaskScheduler' +2025-10-23 20:00:54.379 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:01:04.386 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:01:04 + → module: 'TaskScheduler' +2025-10-23 20:01:04.387 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:01:14.411 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:01:14 + → module: 'TaskScheduler' +2025-10-23 20:01:14.411 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:01:24.420 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:01:24 + → module: 'TaskScheduler' +2025-10-23 20:01:24.420 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:01:34.426 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:01:34 + → module: 'TaskScheduler' +2025-10-23 20:01:34.426 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:01:44.450 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:01:44 + → module: 'TaskScheduler' +2025-10-23 20:01:44.450 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:01:54.459 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:01:54 + → module: 'TaskScheduler' +2025-10-23 20:01:54.459 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:02:04.489 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:02:04 + → module: 'TaskScheduler' +2025-10-23 20:02:04.489 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:02:14.497 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:02:14 + → module: 'TaskScheduler' +2025-10-23 20:02:14.497 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:02:24.505 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:02:24 + → module: 'TaskScheduler' +2025-10-23 20:02:24.506 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:02:34.528 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:02:34 + → module: 'TaskScheduler' +2025-10-23 20:02:34.528 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:02:44.536 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:02:44 + → module: 'TaskScheduler' +2025-10-23 20:02:44.536 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:02:54.545 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:02:54 + → module: 'TaskScheduler' +2025-10-23 20:02:54.545 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:03:04.553 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:03:04 + → module: 'TaskScheduler' +2025-10-23 20:03:04.554 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:03:14.561 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:03:14 + → module: 'TaskScheduler' +2025-10-23 20:03:14.561 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:03:24.585 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:03:24 + → module: 'TaskScheduler' +2025-10-23 20:03:24.585 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:03:34.614 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:03:34 + → module: 'TaskScheduler' +2025-10-23 20:03:34.614 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:03:44.622 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:03:44 + → module: 'TaskScheduler' +2025-10-23 20:03:44.622 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:03:54.654 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:03:54 + → module: 'TaskScheduler' +2025-10-23 20:03:54.654 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:04:04.662 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:04:04 + → module: 'TaskScheduler' +2025-10-23 20:04:04.663 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:04:14.671 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:04:14 + → module: 'TaskScheduler' +2025-10-23 20:04:14.671 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:04:24.679 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:04:24 + → module: 'TaskScheduler' +2025-10-23 20:04:24.679 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:04:34.696 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:04:34 + → module: 'TaskScheduler' +2025-10-23 20:04:34.696 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:04:44.704 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:04:44 + → module: 'TaskScheduler' +2025-10-23 20:04:44.704 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:04:54.712 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:04:54 + → module: 'TaskScheduler' +2025-10-23 20:04:54.712 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:05:04.720 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:05:04 + → module: 'TaskScheduler' +2025-10-23 20:05:04.721 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:05:04.747 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:05:04.769 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 20:05:04.769 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:05:04.770 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 20:05:04.770 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 20:05:04.770 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 20:05:04.790 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 20:05:04.794 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 20:05:04.794 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 20:05:04.795 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 11:57:08 + → module: 'NewsAPIClient' +2025-10-23 20:05:04.795 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 11:57:08 + → module: 'NewsAPIClient' +2025-10-23 20:05:04.795 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 20:05:05.186 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:05:05.198 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:05:05.209 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:05:05.481 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:05:05.483 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 20:05:05.484 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.69秒 + → module: 'NewsAPIClient' +2025-10-23 20:05:05.484 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 20:05:05.486 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 20:05:05.486 | DEBUG | rss_subscriptions:235 - 处理条目 1: 聚焦减污降碳 西安加快建设新型能源体系 + → module: 'NewsAPIClient' +2025-10-23 20:05:05.491 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 20:05:05.494 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 20:05:05.495 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 20:05:05.511 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 20:05:05.512 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 20:05:05.512 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 20:05:05.513 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 20:05:05.515 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 12:02:32 + → module: 'NewsAPIClient' +2025-10-23 20:05:05.515 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 12:02:32 + → module: 'NewsAPIClient' +2025-10-23 20:05:05.515 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.74秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 20:05:05.523 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 20:05:05.524 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:05:14.772 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:05:14 + → module: 'TaskScheduler' +2025-10-23 20:05:14.772 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:05:24.782 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:05:24 + → module: 'TaskScheduler' +2025-10-23 20:05:24.782 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:05:34.802 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:05:34 + → module: 'TaskScheduler' +2025-10-23 20:05:34.802 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:05:44.809 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:05:44 + → module: 'TaskScheduler' +2025-10-23 20:05:44.810 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:05:54.818 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:05:54 + → module: 'TaskScheduler' +2025-10-23 20:05:54.819 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:06:04.848 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:06:04 + → module: 'TaskScheduler' +2025-10-23 20:06:04.848 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:06:14.855 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:06:14 + → module: 'TaskScheduler' +2025-10-23 20:06:14.855 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:06:24.884 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:06:24 + → module: 'TaskScheduler' +2025-10-23 20:06:24.884 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:06:34.908 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:06:34 + → module: 'TaskScheduler' +2025-10-23 20:06:34.908 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:06:44.934 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:06:44 + → module: 'TaskScheduler' +2025-10-23 20:06:44.934 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:06:54.942 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:06:54 + → module: 'TaskScheduler' +2025-10-23 20:06:54.942 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:07:04.963 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:07:04 + → module: 'TaskScheduler' +2025-10-23 20:07:04.963 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:07:14.972 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:07:14 + → module: 'TaskScheduler' +2025-10-23 20:07:14.972 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:07:24.980 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:07:24 + → module: 'TaskScheduler' +2025-10-23 20:07:24.980 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:07:35.009 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:07:35 + → module: 'TaskScheduler' +2025-10-23 20:07:35.009 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:07:45.027 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:07:45 + → module: 'TaskScheduler' +2025-10-23 20:07:45.027 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:07:55.035 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:07:55 + → module: 'TaskScheduler' +2025-10-23 20:07:55.035 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:07:55.042 | INFO | main:87 - 小时任务统计 + → module: 'Main' + → 总任务数: 13 + → 成功: 13 + → 失败: 0 +2025-10-23 20:08:05.044 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:08:05 + → module: 'TaskScheduler' +2025-10-23 20:08:05.044 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:08:15.074 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:08:15 + → module: 'TaskScheduler' +2025-10-23 20:08:15.074 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:08:25.082 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:08:25 + → module: 'TaskScheduler' +2025-10-23 20:08:25.083 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:08:35.091 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:08:35 + → module: 'TaskScheduler' +2025-10-23 20:08:35.092 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:08:45.099 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:08:45 + → module: 'TaskScheduler' +2025-10-23 20:08:45.099 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:08:55.106 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:08:55 + → module: 'TaskScheduler' +2025-10-23 20:08:55.106 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:09:05.135 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:09:05 + → module: 'TaskScheduler' +2025-10-23 20:09:05.135 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:09:15.156 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:09:15 + → module: 'TaskScheduler' +2025-10-23 20:09:15.156 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:09:25.164 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:09:25 + → module: 'TaskScheduler' +2025-10-23 20:09:25.165 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:09:35.172 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:09:35 + → module: 'TaskScheduler' +2025-10-23 20:09:35.173 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:09:45.180 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:09:45 + → module: 'TaskScheduler' +2025-10-23 20:09:45.181 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:09:55.209 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:09:55 + → module: 'TaskScheduler' +2025-10-23 20:09:55.209 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:10:05.238 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:10:05 + → module: 'TaskScheduler' +2025-10-23 20:10:05.238 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:10:05.262 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:10:05.294 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 20:10:05.295 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:10:05.295 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 20:10:05.295 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 20:10:05.296 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 20:10:05.299 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 20:10:05.319 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 20:10:05.320 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 20:10:05.320 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 12:02:32 + → module: 'NewsAPIClient' +2025-10-23 20:10:05.320 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 12:02:32 + → module: 'NewsAPIClient' +2025-10-23 20:10:05.320 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 20:10:05.716 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:10:05.730 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:10:05.771 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:10:06.034 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:10:06.035 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 20:10:06.035 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.71秒 + → module: 'NewsAPIClient' +2025-10-23 20:10:06.035 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 20:10:06.037 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 20:10:06.038 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 20:10:06.039 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 20:10:06.039 | DEBUG | rss_subscriptions:235 - 处理条目 1: 不必谈拉尼娜而色变!超前的冷和拉尼娜 与冷冬并没有必然联系 + → module: 'NewsAPIClient' +2025-10-23 20:10:06.062 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 20:10:06.063 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 20:10:06.064 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 20:10:06.090 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 20:10:06.091 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 20:10:06.092 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 12:06:03 + → module: 'NewsAPIClient' +2025-10-23 20:10:06.093 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 12:06:03 + → module: 'NewsAPIClient' +2025-10-23 20:10:06.093 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.80秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 20:10:06.105 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 20:10:06.105 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:10:15.297 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:10:15 + → module: 'TaskScheduler' +2025-10-23 20:10:15.297 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:10:25.304 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:10:25 + → module: 'TaskScheduler' +2025-10-23 20:10:25.305 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:10:35.313 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:10:35 + → module: 'TaskScheduler' +2025-10-23 20:10:35.313 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:10:45.321 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:10:45 + → module: 'TaskScheduler' +2025-10-23 20:10:45.321 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:10:55.350 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:10:55 + → module: 'TaskScheduler' +2025-10-23 20:10:55.350 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:11:05.358 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:11:05 + → module: 'TaskScheduler' +2025-10-23 20:11:05.358 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:11:15.377 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:11:15 + → module: 'TaskScheduler' +2025-10-23 20:11:15.377 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:11:25.385 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:11:25 + → module: 'TaskScheduler' +2025-10-23 20:11:25.385 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:11:35.393 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:11:35 + → module: 'TaskScheduler' +2025-10-23 20:11:35.393 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:11:45.401 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:11:45 + → module: 'TaskScheduler' +2025-10-23 20:11:45.401 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:11:55.410 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:11:55 + → module: 'TaskScheduler' +2025-10-23 20:11:55.410 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:12:05.418 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:12:05 + → module: 'TaskScheduler' +2025-10-23 20:12:05.418 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:12:15.426 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:12:15 + → module: 'TaskScheduler' +2025-10-23 20:12:15.426 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:12:25.446 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:12:25 + → module: 'TaskScheduler' +2025-10-23 20:12:25.446 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:12:35.454 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:12:35 + → module: 'TaskScheduler' +2025-10-23 20:12:35.454 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:12:45.475 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:12:45 + → module: 'TaskScheduler' +2025-10-23 20:12:45.475 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:12:55.505 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:12:55 + → module: 'TaskScheduler' +2025-10-23 20:12:55.505 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:13:05.530 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:13:05 + → module: 'TaskScheduler' +2025-10-23 20:13:05.530 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:13:15.540 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:13:15 + → module: 'TaskScheduler' +2025-10-23 20:13:15.540 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:13:25.562 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:13:25 + → module: 'TaskScheduler' +2025-10-23 20:13:25.562 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:13:35.590 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:13:35 + → module: 'TaskScheduler' +2025-10-23 20:13:35.590 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:13:45.612 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:13:45 + → module: 'TaskScheduler' +2025-10-23 20:13:45.612 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:13:55.647 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:13:55 + → module: 'TaskScheduler' +2025-10-23 20:13:55.647 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:14:05.655 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:14:05 + → module: 'TaskScheduler' +2025-10-23 20:14:05.655 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:14:15.662 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:14:15 + → module: 'TaskScheduler' +2025-10-23 20:14:15.662 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:14:25.670 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:14:25 + → module: 'TaskScheduler' +2025-10-23 20:14:25.670 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:14:35.697 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:14:35 + → module: 'TaskScheduler' +2025-10-23 20:14:35.697 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:14:45.704 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:14:45 + → module: 'TaskScheduler' +2025-10-23 20:14:45.704 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:14:55.712 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:14:55 + → module: 'TaskScheduler' +2025-10-23 20:14:55.712 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:15:05.719 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:15:05 + → module: 'TaskScheduler' +2025-10-23 20:15:05.719 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:15:05.726 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:15:05.767 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 20:15:05.768 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:15:05.768 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 20:15:05.768 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 20:15:05.768 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 20:15:05.772 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 20:15:05.793 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 20:15:05.794 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 20:15:05.794 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 12:06:03 + → module: 'NewsAPIClient' +2025-10-23 20:15:05.794 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 12:06:03 + → module: 'NewsAPIClient' +2025-10-23 20:15:05.794 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 20:15:06.215 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:15:06.231 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:15:06.243 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:15:06.538 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:15:06.540 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 20:15:06.541 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.75秒 + → module: 'NewsAPIClient' +2025-10-23 20:15:06.541 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 20:15:06.543 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 20:15:06.543 | DEBUG | rss_subscriptions:235 - 处理条目 1: 会长话封关:“海南自贸港建设为鲁商开启机遇之门” + → module: 'NewsAPIClient' +2025-10-23 20:15:06.543 | DEBUG | rss_subscriptions:235 - 处理条目 2: 科技企业领军 中国企业加速“出海”中东地区 + → module: 'NewsAPIClient' +2025-10-23 20:15:06.545 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 20:15:06.548 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 20:15:06.549 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 2 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 20:15:06.582 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 2 + → total_inserted: 2 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 20:15:06.582 | INFO | rss_subscriptions:259 - 成功写入 2/2 条记录 + → module: 'NewsAPIClient' +2025-10-23 20:15:06.583 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 20:15:06.583 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 20:15:06.584 | DEBUG | rss_subscriptions:235 - 处理条目 1: 中国(云南)—南亚东南亚工程教育创新发展国际会议在昆明召开 + → module: 'NewsAPIClient' +2025-10-23 20:15:06.584 | DEBUG | rss_subscriptions:235 - 处理条目 2: 第十五届全运会北京代表团成立 参赛规模全面超上届 + → module: 'NewsAPIClient' +2025-10-23 20:15:06.584 | DEBUG | rss_subscriptions:235 - 处理条目 3: 科技企业领军 中国企业加速“出海”中东地区 + → module: 'NewsAPIClient' +2025-10-23 20:15:06.585 | DEBUG | rss_subscriptions:235 - 处理条目 4: “当代博物馆人的文化自信”展览在广西南宁开幕 + → module: 'NewsAPIClient' +2025-10-23 20:15:06.585 | DEBUG | rss_subscriptions:235 - 处理条目 5: 上海边检总站举办2025年警犬实战大比武 + → module: 'NewsAPIClient' +2025-10-23 20:15:06.586 | DEBUG | rss_subscriptions:235 - 处理条目 6: 《电影作者与历史再现:中国导演代际谱系》致敬中国电影120年 + → module: 'NewsAPIClient' +2025-10-23 20:15:06.586 | DEBUG | rss_subscriptions:235 - 处理条目 7: 人民日报社论:奋力开创中国式现代化建设新局面 + → module: 'NewsAPIClient' +2025-10-23 20:15:06.589 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 20:15:06.591 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 20:15:06.592 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 7 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 20:15:06.609 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 2 + → error_message: "Duplicate entry '科技企业领军 中国企业加速“出海”中东地区-20' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '科技企业领军 中国企业加速“出海”中东地区...', '文章链接': 'http://www.chinanews.com/cj/2025/10-23/10503442.shtml...', '文章摘要': '中新网上海10月23日电 (记者 李佳佳)正在上海进行路演的迪拜多种商品交易中心(以下简称DMCC)执行主席兼首席执行官艾哈迈德·本·苏莱伊姆(Ahmed Bin S... +2025-10-23 20:15:06.630 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 7 + → total_inserted: 6 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-23 20:15:06.631 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 2, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '科技企业领军 中国企业加速“出海”中东地区-20' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 2, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '科技企业领军 中国企业加速“出海”中东地区-20' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '科技企... +2025-10-23 20:15:06.632 | INFO | rss_subscriptions:259 - 成功写入 6/7 条记录 + → module: 'NewsAPIClient' +2025-10-23 20:15:06.633 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 12:13:11 + → module: 'NewsAPIClient' +2025-10-23 20:15:06.633 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 12:13:11 + → module: 'NewsAPIClient' +2025-10-23 20:15:06.634 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.87秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 20:15:06.641 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 20:15:06.641 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:15:15.770 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:15:15 + → module: 'TaskScheduler' +2025-10-23 20:15:15.770 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:15:25.777 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:15:25 + → module: 'TaskScheduler' +2025-10-23 20:15:25.777 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:15:35.800 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:15:35 + → module: 'TaskScheduler' +2025-10-23 20:15:35.800 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:15:45.809 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:15:45 + → module: 'TaskScheduler' +2025-10-23 20:15:45.809 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:15:55.817 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:15:55 + → module: 'TaskScheduler' +2025-10-23 20:15:55.817 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:16:05.826 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:16:05 + → module: 'TaskScheduler' +2025-10-23 20:16:05.826 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:16:15.833 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:16:15 + → module: 'TaskScheduler' +2025-10-23 20:16:15.833 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:16:25.855 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:16:25 + → module: 'TaskScheduler' +2025-10-23 20:16:25.855 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:16:35.863 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:16:35 + → module: 'TaskScheduler' +2025-10-23 20:16:35.863 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:16:45.884 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:16:45 + → module: 'TaskScheduler' +2025-10-23 20:16:45.884 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:16:55.892 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:16:55 + → module: 'TaskScheduler' +2025-10-23 20:16:55.892 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:17:05.900 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:17:05 + → module: 'TaskScheduler' +2025-10-23 20:17:05.900 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:17:15.907 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:17:15 + → module: 'TaskScheduler' +2025-10-23 20:17:15.908 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:17:25.933 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:17:25 + → module: 'TaskScheduler' +2025-10-23 20:17:25.934 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:17:35.942 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:17:35 + → module: 'TaskScheduler' +2025-10-23 20:17:35.942 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:17:45.974 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:17:45 + → module: 'TaskScheduler' +2025-10-23 20:17:45.974 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:17:55.995 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:17:55 + → module: 'TaskScheduler' +2025-10-23 20:17:55.995 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:18:06.002 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:18:06 + → module: 'TaskScheduler' +2025-10-23 20:18:06.002 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:18:16.011 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:18:16 + → module: 'TaskScheduler' +2025-10-23 20:18:16.011 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:18:26.045 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:18:26 + → module: 'TaskScheduler' +2025-10-23 20:18:26.045 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:18:36.055 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:18:36 + → module: 'TaskScheduler' +2025-10-23 20:18:36.055 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:18:46.062 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:18:46 + → module: 'TaskScheduler' +2025-10-23 20:18:46.062 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:18:56.071 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:18:56 + → module: 'TaskScheduler' +2025-10-23 20:18:56.071 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:19:06.079 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:19:06 + → module: 'TaskScheduler' +2025-10-23 20:19:06.079 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:19:16.101 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:19:16 + → module: 'TaskScheduler' +2025-10-23 20:19:16.101 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:19:26.109 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:19:26 + → module: 'TaskScheduler' +2025-10-23 20:19:26.109 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:19:36.131 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:19:36 + → module: 'TaskScheduler' +2025-10-23 20:19:36.131 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:19:46.151 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:19:46 + → module: 'TaskScheduler' +2025-10-23 20:19:46.151 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:19:56.175 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:19:56 + → module: 'TaskScheduler' +2025-10-23 20:19:56.175 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:20:06.184 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:20:06 + → module: 'TaskScheduler' +2025-10-23 20:20:06.185 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:20:06.194 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:20:06.232 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 20:20:06.233 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:20:06.233 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 20:20:06.233 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 20:20:06.233 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 20:20:06.236 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 20:20:06.262 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 20:20:06.263 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 20:20:06.264 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 12:13:11 + → module: 'NewsAPIClient' +2025-10-23 20:20:06.264 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 12:13:11 + → module: 'NewsAPIClient' +2025-10-23 20:20:06.264 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 20:20:06.689 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:20:06.708 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:20:06.755 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:20:07.016 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:20:07.017 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 20:20:07.018 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.75秒 + → module: 'NewsAPIClient' +2025-10-23 20:20:07.018 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 20:20:07.019 | DEBUG | rss_subscriptions:235 - 处理条目 1: 云南宁蒗“糖心苹果”丰收 产品销全国各地 + → module: 'NewsAPIClient' +2025-10-23 20:20:07.022 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 20:20:07.024 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 20:20:07.026 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 20:20:07.050 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 20:20:07.051 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 20:20:07.051 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 20:20:07.053 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 20:20:07.053 | DEBUG | rss_subscriptions:235 - 处理条目 1: 商务部新闻发言人就欧盟第19轮对俄制裁列单中国企业答记者问 + → module: 'NewsAPIClient' +2025-10-23 20:20:07.056 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 20:20:07.057 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 20:20:07.058 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 20:20:07.066 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 20:20:07.067 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 20:20:07.067 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 20:20:07.069 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 12:18:19 + → module: 'NewsAPIClient' +2025-10-23 20:20:07.069 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 12:18:19 + → module: 'NewsAPIClient' +2025-10-23 20:20:07.069 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.84秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 20:20:07.078 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 20:20:07.078 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:20:16.234 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:20:16 + → module: 'TaskScheduler' +2025-10-23 20:20:16.234 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:20:26.242 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:20:26 + → module: 'TaskScheduler' +2025-10-23 20:20:26.242 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:20:36.268 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:20:36 + → module: 'TaskScheduler' +2025-10-23 20:20:36.268 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:20:46.278 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:20:46 + → module: 'TaskScheduler' +2025-10-23 20:20:46.278 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:20:56.297 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:20:56 + → module: 'TaskScheduler' +2025-10-23 20:20:56.297 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:21:06.324 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:21:06 + → module: 'TaskScheduler' +2025-10-23 20:21:06.324 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:21:16.332 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:21:16 + → module: 'TaskScheduler' +2025-10-23 20:21:16.332 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:21:26.358 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:21:26 + → module: 'TaskScheduler' +2025-10-23 20:21:26.358 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:21:36.366 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:21:36 + → module: 'TaskScheduler' +2025-10-23 20:21:36.366 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:21:46.374 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:21:46 + → module: 'TaskScheduler' +2025-10-23 20:21:46.375 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:21:56.406 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:21:56 + → module: 'TaskScheduler' +2025-10-23 20:21:56.406 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:22:06.414 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:22:06 + → module: 'TaskScheduler' +2025-10-23 20:22:06.414 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:22:16.422 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:22:16 + → module: 'TaskScheduler' +2025-10-23 20:22:16.422 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:22:26.429 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:22:26 + → module: 'TaskScheduler' +2025-10-23 20:22:26.429 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:22:36.438 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:22:36 + → module: 'TaskScheduler' +2025-10-23 20:22:36.438 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:22:46.463 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:22:46 + → module: 'TaskScheduler' +2025-10-23 20:22:46.463 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:22:56.482 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:22:56 + → module: 'TaskScheduler' +2025-10-23 20:22:56.482 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:23:06.489 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:23:06 + → module: 'TaskScheduler' +2025-10-23 20:23:06.489 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:23:16.497 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:23:16 + → module: 'TaskScheduler' +2025-10-23 20:23:16.497 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:23:26.516 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:23:26 + → module: 'TaskScheduler' +2025-10-23 20:23:26.516 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:23:36.523 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:23:36 + → module: 'TaskScheduler' +2025-10-23 20:23:36.523 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:23:46.544 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:23:46 + → module: 'TaskScheduler' +2025-10-23 20:23:46.544 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:23:56.565 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:23:56 + → module: 'TaskScheduler' +2025-10-23 20:23:56.565 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:24:06.584 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:24:06 + → module: 'TaskScheduler' +2025-10-23 20:24:06.584 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:24:16.591 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:24:16 + → module: 'TaskScheduler' +2025-10-23 20:24:16.591 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:24:26.599 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:24:26 + → module: 'TaskScheduler' +2025-10-23 20:24:26.599 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:24:36.620 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:24:36 + → module: 'TaskScheduler' +2025-10-23 20:24:36.620 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:24:46.627 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:24:46 + → module: 'TaskScheduler' +2025-10-23 20:24:46.627 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:24:56.648 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:24:56 + → module: 'TaskScheduler' +2025-10-23 20:24:56.648 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:25:06.670 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:25:06 + → module: 'TaskScheduler' +2025-10-23 20:25:06.670 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:25:06.676 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:25:06.685 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 20:25:06.686 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:25:06.686 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 20:25:06.686 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 20:25:06.686 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 20:25:06.689 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 20:25:06.692 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 20:25:06.693 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 20:25:06.693 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 12:18:19 + → module: 'NewsAPIClient' +2025-10-23 20:25:06.693 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 12:18:19 + → module: 'NewsAPIClient' +2025-10-23 20:25:06.694 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 20:25:07.171 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:25:07.185 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:25:07.213 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:25:07.509 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:25:07.511 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 20:25:07.512 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.82秒 + → module: 'NewsAPIClient' +2025-10-23 20:25:07.512 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 20:25:07.513 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 20:25:07.514 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 20:25:07.514 | DEBUG | rss_subscriptions:235 - 处理条目 1: 中新天津生态城发布国际市场准入方案 助力国内企业“出海” + → module: 'NewsAPIClient' +2025-10-23 20:25:07.517 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 20:25:07.519 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 20:25:07.520 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 20:25:07.528 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 20:25:07.529 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 20:25:07.529 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 20:25:07.529 | DEBUG | rss_subscriptions:235 - 处理条目 1: 中新天津生态城发布国际市场准入方案 助力国内企业“出海” + → module: 'NewsAPIClient' +2025-10-23 20:25:07.532 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 20:25:07.534 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 20:25:07.535 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 20:25:07.540 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 0 + → error_message: "Duplicate entry '中新天津生态城发布国际市场准入方案 助力国内' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '中新天津生态城发布国际市场准入方案 助力国内企业“出海”...', '文章链接': 'http://www.chinanews.com/cj/2025/10-23/10503410.shtml...', '文章摘要': '中新网天津10月23日电 (记者 周亚强)2025“生态创想·绿色行动”国际青年英才创新大赛暨生态城“创新之星”绿创大赛决赛暨颁奖典礼22日在中新天津生... +2025-10-23 20:25:07.541 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 0 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-23 20:25:07.542 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '中新天津生态城发布国际市场准入方案 助力国内' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '中新天津生态城发布国际市场准入方案 助力国内' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '中新天津生... +2025-10-23 20:25:07.542 | INFO | rss_subscriptions:259 - 成功写入 0/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 20:25:07.543 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 12:21:03 + → module: 'NewsAPIClient' +2025-10-23 20:25:07.543 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 12:21:03 + → module: 'NewsAPIClient' +2025-10-23 20:25:07.544 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.86秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 20:25:07.551 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 20:25:07.552 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:25:16.687 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:25:16 + → module: 'TaskScheduler' +2025-10-23 20:25:16.687 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:25:26.717 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:25:26 + → module: 'TaskScheduler' +2025-10-23 20:25:26.717 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:25:36.725 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:25:36 + → module: 'TaskScheduler' +2025-10-23 20:25:36.726 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:25:46.734 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:25:46 + → module: 'TaskScheduler' +2025-10-23 20:25:46.734 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:25:56.742 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:25:56 + → module: 'TaskScheduler' +2025-10-23 20:25:56.742 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:26:06.750 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:26:06 + → module: 'TaskScheduler' +2025-10-23 20:26:06.750 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:26:16.768 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:26:16 + → module: 'TaskScheduler' +2025-10-23 20:26:16.768 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:26:26.799 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:26:26 + → module: 'TaskScheduler' +2025-10-23 20:26:26.799 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:26:36.807 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:26:36 + → module: 'TaskScheduler' +2025-10-23 20:26:36.807 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:26:46.815 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:26:46 + → module: 'TaskScheduler' +2025-10-23 20:26:46.816 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:26:56.824 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:26:56 + → module: 'TaskScheduler' +2025-10-23 20:26:56.824 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:27:06.832 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:27:06 + → module: 'TaskScheduler' +2025-10-23 20:27:06.832 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:27:16.842 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:27:16 + → module: 'TaskScheduler' +2025-10-23 20:27:16.842 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:27:26.849 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:27:26 + → module: 'TaskScheduler' +2025-10-23 20:27:26.849 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:27:36.857 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:27:36 + → module: 'TaskScheduler' +2025-10-23 20:27:36.857 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:27:46.864 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:27:46 + → module: 'TaskScheduler' +2025-10-23 20:27:46.864 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:27:56.893 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:27:56 + → module: 'TaskScheduler' +2025-10-23 20:27:56.893 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:28:06.901 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:28:06 + → module: 'TaskScheduler' +2025-10-23 20:28:06.901 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:28:16.909 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:28:16 + → module: 'TaskScheduler' +2025-10-23 20:28:16.909 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:28:26.918 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:28:26 + → module: 'TaskScheduler' +2025-10-23 20:28:26.918 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:28:36.926 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:28:36 + → module: 'TaskScheduler' +2025-10-23 20:28:36.926 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:28:46.955 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:28:46 + → module: 'TaskScheduler' +2025-10-23 20:28:46.955 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:28:56.973 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:28:56 + → module: 'TaskScheduler' +2025-10-23 20:28:56.973 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:29:06.995 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:29:06 + → module: 'TaskScheduler' +2025-10-23 20:29:06.995 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:29:17.017 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:29:17 + → module: 'TaskScheduler' +2025-10-23 20:29:17.017 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:29:27.046 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:29:27 + → module: 'TaskScheduler' +2025-10-23 20:29:27.046 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:29:37.052 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:29:37 + → module: 'TaskScheduler' +2025-10-23 20:29:37.052 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:29:47.081 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:29:47 + → module: 'TaskScheduler' +2025-10-23 20:29:47.081 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:29:57.091 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:29:57 + → module: 'TaskScheduler' +2025-10-23 20:29:57.091 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:30:07.099 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:30:07 + → module: 'TaskScheduler' +2025-10-23 20:30:07.099 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:30:07.108 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:30:07.143 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 20:30:07.143 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:30:07.145 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 20:30:07.145 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 20:30:07.145 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 20:30:07.171 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 20:30:07.189 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 20:30:07.189 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 20:30:07.190 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 12:21:03 + → module: 'NewsAPIClient' +2025-10-23 20:30:07.190 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 12:21:03 + → module: 'NewsAPIClient' +2025-10-23 20:30:07.191 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 20:30:07.587 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:30:07.602 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:30:07.639 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:30:07.920 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:30:07.922 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 20:30:07.923 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.73秒 + → module: 'NewsAPIClient' +2025-10-23 20:30:07.923 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 20:30:07.924 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 20:30:07.926 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 20:30:07.926 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 20:30:07.928 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 12:21:03 + → module: 'NewsAPIClient' +2025-10-23 20:30:07.928 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 12:21:03 + → module: 'NewsAPIClient' +2025-10-23 20:30:07.928 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.78秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 20:30:07.954 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 20:30:07.954 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:30:17.147 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:30:17 + → module: 'TaskScheduler' +2025-10-23 20:30:17.147 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:30:27.155 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:30:27 + → module: 'TaskScheduler' +2025-10-23 20:30:27.155 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:30:37.178 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:30:37 + → module: 'TaskScheduler' +2025-10-23 20:30:37.178 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:30:47.187 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:30:47 + → module: 'TaskScheduler' +2025-10-23 20:30:47.187 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:30:57.195 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:30:57 + → module: 'TaskScheduler' +2025-10-23 20:30:57.195 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:31:07.203 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:31:07 + → module: 'TaskScheduler' +2025-10-23 20:31:07.203 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:31:17.229 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:31:17 + → module: 'TaskScheduler' +2025-10-23 20:31:17.229 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:31:27.254 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:31:27 + → module: 'TaskScheduler' +2025-10-23 20:31:27.254 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:31:37.281 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:31:37 + → module: 'TaskScheduler' +2025-10-23 20:31:37.282 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:31:47.289 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:31:47 + → module: 'TaskScheduler' +2025-10-23 20:31:47.289 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:31:57.297 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:31:57 + → module: 'TaskScheduler' +2025-10-23 20:31:57.297 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:32:07.305 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:32:07 + → module: 'TaskScheduler' +2025-10-23 20:32:07.305 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:32:17.312 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:32:17 + → module: 'TaskScheduler' +2025-10-23 20:32:17.312 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:32:27.339 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:32:27 + → module: 'TaskScheduler' +2025-10-23 20:32:27.339 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:32:37.347 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:32:37 + → module: 'TaskScheduler' +2025-10-23 20:32:37.348 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:32:47.355 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:32:47 + → module: 'TaskScheduler' +2025-10-23 20:32:47.355 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:32:57.363 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:32:57 + → module: 'TaskScheduler' +2025-10-23 20:32:57.363 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:33:07.371 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:33:07 + → module: 'TaskScheduler' +2025-10-23 20:33:07.371 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:33:17.405 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:33:17 + → module: 'TaskScheduler' +2025-10-23 20:33:17.405 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:33:27.413 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:33:27 + → module: 'TaskScheduler' +2025-10-23 20:33:27.413 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:33:37.432 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:33:37 + → module: 'TaskScheduler' +2025-10-23 20:33:37.432 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:33:47.440 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:33:47 + → module: 'TaskScheduler' +2025-10-23 20:33:47.440 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:33:57.461 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:33:57 + → module: 'TaskScheduler' +2025-10-23 20:33:57.461 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:34:07.469 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:34:07 + → module: 'TaskScheduler' +2025-10-23 20:34:07.469 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:34:17.477 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:34:17 + → module: 'TaskScheduler' +2025-10-23 20:34:17.477 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:34:27.485 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:34:27 + → module: 'TaskScheduler' +2025-10-23 20:34:27.485 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:34:37.495 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:34:37 + → module: 'TaskScheduler' +2025-10-23 20:34:37.495 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:34:47.525 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:34:47 + → module: 'TaskScheduler' +2025-10-23 20:34:47.525 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:34:57.561 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:34:57 + → module: 'TaskScheduler' +2025-10-23 20:34:57.561 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:35:07.567 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:35:07 + → module: 'TaskScheduler' +2025-10-23 20:35:07.567 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:35:07.576 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:35:07.630 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 20:35:07.630 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:35:07.631 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 20:35:07.631 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 20:35:07.631 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 20:35:07.634 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 20:35:07.637 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 20:35:07.638 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 20:35:07.639 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 12:21:03 + → module: 'NewsAPIClient' +2025-10-23 20:35:07.639 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 12:21:03 + → module: 'NewsAPIClient' +2025-10-23 20:35:07.639 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 20:35:08.060 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:35:08.072 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:35:08.086 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:35:08.376 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:35:08.378 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 20:35:08.379 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.74秒 + → module: 'NewsAPIClient' +2025-10-23 20:35:08.379 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 20:35:08.379 | DEBUG | rss_subscriptions:235 - 处理条目 1: “两岸关系新形势”学术研讨会暨清华两岸论坛在北京举行 + → module: 'NewsAPIClient' +2025-10-23 20:35:08.400 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 20:35:08.402 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 20:35:08.404 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 20:35:08.445 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 20:35:08.446 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 20:35:08.446 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 20:35:08.448 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 20:35:08.448 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 20:35:08.450 | DEBUG | rss_subscriptions:235 - 处理条目 1: “两岸关系新形势”学术研讨会暨清华两岸论坛在北京举行 + → module: 'NewsAPIClient' +2025-10-23 20:35:08.452 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 20:35:08.455 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 20:35:08.456 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 20:35:08.461 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 0 + → error_message: "Duplicate entry '“两岸关系新形势”学术研讨会暨清华两岸论坛å' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '“两岸关系新形势”学术研讨会暨清华两岸论坛在北京举行...', '文章链接': 'http://www.chinanews.com/gn/2025/10-23/10503434.shtml...', '文章摘要': '中新网北京10月23日电 (记者 陈建新)“两岸关系新形势”学术研讨会暨清华两岸论坛23日在北京举行。来自海峡两岸的140余位专家学者等与会。...', '... +2025-10-23 20:35:08.462 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 0 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-23 20:35:08.462 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '“两岸关系新形势”学术研讨会暨清华两岸论坛å' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '“两岸关系新形势”学术研讨会暨清华两岸论坛å' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '“两岸关系... +2025-10-23 20:35:08.462 | INFO | rss_subscriptions:259 - 成功写入 0/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 20:35:08.463 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 12:26:58 + → module: 'NewsAPIClient' +2025-10-23 20:35:08.463 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 12:26:58 + → module: 'NewsAPIClient' +2025-10-23 20:35:08.465 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.83秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 20:35:08.472 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 20:35:08.474 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:35:17.632 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:35:17 + → module: 'TaskScheduler' +2025-10-23 20:35:17.633 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:35:27.641 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:35:27 + → module: 'TaskScheduler' +2025-10-23 20:35:27.641 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:35:37.648 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:35:37 + → module: 'TaskScheduler' +2025-10-23 20:35:37.648 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:35:47.680 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:35:47 + → module: 'TaskScheduler' +2025-10-23 20:35:47.681 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:35:57.705 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:35:57 + → module: 'TaskScheduler' +2025-10-23 20:35:57.705 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:36:07.712 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:36:07 + → module: 'TaskScheduler' +2025-10-23 20:36:07.713 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:36:17.723 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:36:17 + → module: 'TaskScheduler' +2025-10-23 20:36:17.723 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:36:27.731 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:36:27 + → module: 'TaskScheduler' +2025-10-23 20:36:27.731 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:36:37.762 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:36:37 + → module: 'TaskScheduler' +2025-10-23 20:36:37.762 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:36:47.785 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:36:47 + → module: 'TaskScheduler' +2025-10-23 20:36:47.785 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:36:57.796 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:36:57 + → module: 'TaskScheduler' +2025-10-23 20:36:57.796 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:37:07.826 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:37:07 + → module: 'TaskScheduler' +2025-10-23 20:37:07.826 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:37:17.843 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:37:17 + → module: 'TaskScheduler' +2025-10-23 20:37:17.843 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:37:27.875 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:37:27 + → module: 'TaskScheduler' +2025-10-23 20:37:27.876 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:37:37.884 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:37:37 + → module: 'TaskScheduler' +2025-10-23 20:37:37.884 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:37:47.893 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:37:47 + → module: 'TaskScheduler' +2025-10-23 20:37:47.894 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:37:57.902 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:37:57 + → module: 'TaskScheduler' +2025-10-23 20:37:57.902 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:38:07.926 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:38:07 + → module: 'TaskScheduler' +2025-10-23 20:38:07.926 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:38:17.933 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:38:17 + → module: 'TaskScheduler' +2025-10-23 20:38:17.933 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:38:27.961 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:38:27 + → module: 'TaskScheduler' +2025-10-23 20:38:27.961 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:38:37.969 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:38:37 + → module: 'TaskScheduler' +2025-10-23 20:38:37.969 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:38:47.977 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:38:47 + → module: 'TaskScheduler' +2025-10-23 20:38:47.977 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:38:57.985 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:38:57 + → module: 'TaskScheduler' +2025-10-23 20:38:57.985 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:39:07.993 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:39:07 + → module: 'TaskScheduler' +2025-10-23 20:39:07.993 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:39:18.021 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:39:18 + → module: 'TaskScheduler' +2025-10-23 20:39:18.021 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:39:28.032 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:39:28 + → module: 'TaskScheduler' +2025-10-23 20:39:28.032 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:39:38.039 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:39:38 + → module: 'TaskScheduler' +2025-10-23 20:39:38.040 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:39:48.061 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:39:48 + → module: 'TaskScheduler' +2025-10-23 20:39:48.061 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:39:58.090 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:39:58 + → module: 'TaskScheduler' +2025-10-23 20:39:58.090 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:40:08.098 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:40:08 + → module: 'TaskScheduler' +2025-10-23 20:40:08.098 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:40:08.106 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:40:08.150 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 20:40:08.150 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:40:08.150 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 20:40:08.150 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 20:40:08.150 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 20:40:08.154 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 20:40:08.179 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 20:40:08.179 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 20:40:08.180 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 12:26:58 + → module: 'NewsAPIClient' +2025-10-23 20:40:08.180 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 12:26:58 + → module: 'NewsAPIClient' +2025-10-23 20:40:08.181 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 20:40:08.597 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:40:08.613 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:40:08.625 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:40:08.943 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:40:08.945 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 20:40:08.945 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.76秒 + → module: 'NewsAPIClient' +2025-10-23 20:40:08.946 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 20:40:08.947 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 20:40:08.947 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 20:40:08.948 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 20:40:08.948 | DEBUG | rss_subscriptions:235 - 处理条目 1: 多连发:聚焦党的二十届四中全会 + → module: 'NewsAPIClient' +2025-10-23 20:40:08.949 | DEBUG | rss_subscriptions:235 - 处理条目 2: 帮孩子提升肌肉力量,要运动,还要精准补充营养 + → module: 'NewsAPIClient' +2025-10-23 20:40:08.949 | DEBUG | rss_subscriptions:235 - 处理条目 3: 中国共产党第二十届中央委员会第四次全体会议在京举行 + → module: 'NewsAPIClient' +2025-10-23 20:40:08.967 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 20:40:08.969 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 20:40:08.970 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 3 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 20:40:08.990 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 3 + → total_inserted: 3 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 20:40:08.991 | INFO | rss_subscriptions:259 - 成功写入 3/3 条记录 + → module: 'NewsAPIClient' +2025-10-23 20:40:08.991 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 12:39:44 + → module: 'NewsAPIClient' +2025-10-23 20:40:08.991 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 12:39:44 + → module: 'NewsAPIClient' +2025-10-23 20:40:08.992 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.84秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 20:40:09.000 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 20:40:09.000 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:40:18.152 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:40:18 + → module: 'TaskScheduler' +2025-10-23 20:40:18.152 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:40:28.160 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:40:28 + → module: 'TaskScheduler' +2025-10-23 20:40:28.160 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:40:38.168 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:40:38 + → module: 'TaskScheduler' +2025-10-23 20:40:38.168 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:40:48.177 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:40:48 + → module: 'TaskScheduler' +2025-10-23 20:40:48.177 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:40:58.185 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:40:58 + → module: 'TaskScheduler' +2025-10-23 20:40:58.185 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:41:08.193 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:41:08 + → module: 'TaskScheduler' +2025-10-23 20:41:08.193 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:41:18.202 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:41:18 + → module: 'TaskScheduler' +2025-10-23 20:41:18.202 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:41:28.212 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:41:28 + → module: 'TaskScheduler' +2025-10-23 20:41:28.212 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:41:38.220 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:41:38 + → module: 'TaskScheduler' +2025-10-23 20:41:38.220 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:41:48.247 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:41:48 + → module: 'TaskScheduler' +2025-10-23 20:41:48.247 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:41:58.254 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:41:58 + → module: 'TaskScheduler' +2025-10-23 20:41:58.254 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:42:08.261 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:42:08 + → module: 'TaskScheduler' +2025-10-23 20:42:08.261 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:42:18.294 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:42:18 + → module: 'TaskScheduler' +2025-10-23 20:42:18.294 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:42:28.327 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:42:28 + → module: 'TaskScheduler' +2025-10-23 20:42:28.327 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:42:38.336 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:42:38 + → module: 'TaskScheduler' +2025-10-23 20:42:38.336 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:42:48.369 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:42:48 + → module: 'TaskScheduler' +2025-10-23 20:42:48.369 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:42:58.377 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:42:58 + → module: 'TaskScheduler' +2025-10-23 20:42:58.377 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:43:08.384 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:43:08 + → module: 'TaskScheduler' +2025-10-23 20:43:08.384 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:43:18.410 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:43:18 + → module: 'TaskScheduler' +2025-10-23 20:43:18.410 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:43:28.443 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:43:28 + → module: 'TaskScheduler' +2025-10-23 20:43:28.443 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:43:38.461 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:43:38 + → module: 'TaskScheduler' +2025-10-23 20:43:38.461 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:43:48.470 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:43:48 + → module: 'TaskScheduler' +2025-10-23 20:43:48.470 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:43:58.480 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:43:58 + → module: 'TaskScheduler' +2025-10-23 20:43:58.480 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:44:08.487 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:44:08 + → module: 'TaskScheduler' +2025-10-23 20:44:08.487 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:44:18.494 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:44:18 + → module: 'TaskScheduler' +2025-10-23 20:44:18.494 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:44:28.501 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:44:28 + → module: 'TaskScheduler' +2025-10-23 20:44:28.501 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:44:38.508 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:44:38 + → module: 'TaskScheduler' +2025-10-23 20:44:38.508 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:44:48.515 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:44:48 + → module: 'TaskScheduler' +2025-10-23 20:44:48.515 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:44:58.544 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:44:58 + → module: 'TaskScheduler' +2025-10-23 20:44:58.544 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:45:08.552 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:45:08 + → module: 'TaskScheduler' +2025-10-23 20:45:08.552 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:45:08.560 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:45:08.603 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 20:45:08.604 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:45:08.604 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 20:45:08.605 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 20:45:08.605 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 20:45:08.627 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 20:45:08.642 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 20:45:08.643 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 20:45:08.644 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 12:39:44 + → module: 'NewsAPIClient' +2025-10-23 20:45:08.644 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 12:39:44 + → module: 'NewsAPIClient' +2025-10-23 20:45:08.644 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 20:45:09.059 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:45:09.093 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:45:09.104 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:45:09.367 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:45:09.370 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 20:45:09.371 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.73秒 + → module: 'NewsAPIClient' +2025-10-23 20:45:09.371 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 20:45:09.372 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 20:45:09.373 | DEBUG | rss_subscriptions:235 - 处理条目 1: 四中全会公报释放重要信号 + → module: 'NewsAPIClient' +2025-10-23 20:45:09.375 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 20:45:09.377 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 20:45:09.378 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 20:45:09.398 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 20:45:09.399 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 20:45:09.399 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 20:45:09.401 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 20:45:09.404 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 12:41:43 + → module: 'NewsAPIClient' +2025-10-23 20:45:09.405 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 12:41:43 + → module: 'NewsAPIClient' +2025-10-23 20:45:09.406 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.80秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 20:45:09.439 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 20:45:09.440 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:45:18.607 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:45:18 + → module: 'TaskScheduler' +2025-10-23 20:45:18.607 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:45:28.615 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:45:28 + → module: 'TaskScheduler' +2025-10-23 20:45:28.615 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:45:38.627 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:45:38 + → module: 'TaskScheduler' +2025-10-23 20:45:38.627 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:45:48.660 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:45:48 + → module: 'TaskScheduler' +2025-10-23 20:45:48.660 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:45:58.669 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:45:58 + → module: 'TaskScheduler' +2025-10-23 20:45:58.669 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:46:08.698 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:46:08 + → module: 'TaskScheduler' +2025-10-23 20:46:08.698 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:46:18.708 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:46:18 + → module: 'TaskScheduler' +2025-10-23 20:46:18.709 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:46:28.718 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:46:28 + → module: 'TaskScheduler' +2025-10-23 20:46:28.718 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:46:38.727 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:46:38 + → module: 'TaskScheduler' +2025-10-23 20:46:38.727 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:46:48.736 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:46:48 + → module: 'TaskScheduler' +2025-10-23 20:46:48.737 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:46:58.759 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:46:58 + → module: 'TaskScheduler' +2025-10-23 20:46:58.759 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:47:08.777 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:47:08 + → module: 'TaskScheduler' +2025-10-23 20:47:08.777 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:47:18.784 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:47:18 + → module: 'TaskScheduler' +2025-10-23 20:47:18.784 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:47:28.792 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:47:28 + → module: 'TaskScheduler' +2025-10-23 20:47:28.792 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:47:38.800 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:47:38 + → module: 'TaskScheduler' +2025-10-23 20:47:38.800 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:47:48.807 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:47:48 + → module: 'TaskScheduler' +2025-10-23 20:47:48.808 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:47:58.816 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:47:58 + → module: 'TaskScheduler' +2025-10-23 20:47:58.816 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:48:08.824 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:48:08 + → module: 'TaskScheduler' +2025-10-23 20:48:08.824 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:48:18.843 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:48:18 + → module: 'TaskScheduler' +2025-10-23 20:48:18.843 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:48:28.878 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:48:28 + → module: 'TaskScheduler' +2025-10-23 20:48:28.879 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:48:38.900 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:48:38 + → module: 'TaskScheduler' +2025-10-23 20:48:38.901 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:48:48.923 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:48:48 + → module: 'TaskScheduler' +2025-10-23 20:48:48.923 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:48:58.931 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:48:58 + → module: 'TaskScheduler' +2025-10-23 20:48:58.931 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:49:08.966 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:49:08 + → module: 'TaskScheduler' +2025-10-23 20:49:08.966 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:49:18.986 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:49:18 + → module: 'TaskScheduler' +2025-10-23 20:49:18.986 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:49:28.994 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:49:28 + → module: 'TaskScheduler' +2025-10-23 20:49:28.994 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:49:39.004 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:49:39 + → module: 'TaskScheduler' +2025-10-23 20:49:39.004 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:49:49.037 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:49:49 + → module: 'TaskScheduler' +2025-10-23 20:49:49.037 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:49:59.061 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:49:59 + → module: 'TaskScheduler' +2025-10-23 20:49:59.062 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:50:09.071 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:50:09 + → module: 'TaskScheduler' +2025-10-23 20:50:09.071 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:50:09.087 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:50:09.145 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 20:50:09.145 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:50:09.145 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 20:50:09.146 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 20:50:09.146 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 20:50:09.150 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 20:50:09.163 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 20:50:09.163 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 20:50:09.163 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 12:41:43 + → module: 'NewsAPIClient' +2025-10-23 20:50:09.164 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 12:41:43 + → module: 'NewsAPIClient' +2025-10-23 20:50:09.164 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 20:50:09.634 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:50:09.645 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:50:09.660 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:50:09.927 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:50:09.928 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 20:50:09.929 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.77秒 + → module: 'NewsAPIClient' +2025-10-23 20:50:09.929 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 20:50:09.930 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 20:50:09.931 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 20:50:09.931 | DEBUG | rss_subscriptions:235 - 处理条目 1: 一图速览四中全会公报 + → module: 'NewsAPIClient' +2025-10-23 20:50:09.953 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 20:50:09.955 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 20:50:09.956 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 20:50:09.966 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 20:50:09.967 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 20:50:09.967 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 20:50:09.968 | DEBUG | rss_subscriptions:235 - 处理条目 1: 一图速览四中全会公报 + → module: 'NewsAPIClient' +2025-10-23 20:50:09.985 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 20:50:09.987 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 20:50:09.989 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 20:50:09.992 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 0 + → error_message: "Duplicate entry '一图速览四中全会公报-2025-10-23 12:43:45' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '一图速览四中全会公报...', '文章链接': 'http://www.chinanews.com/cj/2025/10-23/10503460.shtml...', '文章摘要': None, '发布时间': '2025-10-23 12:43:45...', '来源URL': 'https://www.chinanews.com.cn/rss/scroll-news.... +2025-10-23 20:50:09.992 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 0 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-23 20:50:09.992 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '一图速览四中全会公报-2025-10-23 12:43:45' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '一图速览四中全会公报-2025-10-23 12:43:45' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题'... +2025-10-23 20:50:09.994 | INFO | rss_subscriptions:259 - 成功写入 0/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 20:50:09.995 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 12:43:45 + → module: 'NewsAPIClient' +2025-10-23 20:50:09.995 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 12:43:45 + → module: 'NewsAPIClient' +2025-10-23 20:50:09.995 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.85秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 20:50:10.003 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 20:50:10.003 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:50:19.147 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:50:19 + → module: 'TaskScheduler' +2025-10-23 20:50:19.147 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:50:29.155 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:50:29 + → module: 'TaskScheduler' +2025-10-23 20:50:29.155 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:50:39.183 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:50:39 + → module: 'TaskScheduler' +2025-10-23 20:50:39.183 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:50:49.191 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:50:49 + → module: 'TaskScheduler' +2025-10-23 20:50:49.191 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:50:59.198 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:50:59 + → module: 'TaskScheduler' +2025-10-23 20:50:59.198 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:51:09.205 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:51:09 + → module: 'TaskScheduler' +2025-10-23 20:51:09.206 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:51:19.214 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:51:19 + → module: 'TaskScheduler' +2025-10-23 20:51:19.214 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:51:29.222 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:51:29 + → module: 'TaskScheduler' +2025-10-23 20:51:29.222 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:51:39.230 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:51:39 + → module: 'TaskScheduler' +2025-10-23 20:51:39.230 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:51:49.247 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:51:49 + → module: 'TaskScheduler' +2025-10-23 20:51:49.247 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:51:59.257 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:51:59 + → module: 'TaskScheduler' +2025-10-23 20:51:59.257 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:52:09.265 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:52:09 + → module: 'TaskScheduler' +2025-10-23 20:52:09.265 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:52:19.287 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:52:19 + → module: 'TaskScheduler' +2025-10-23 20:52:19.287 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:52:29.295 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:52:29 + → module: 'TaskScheduler' +2025-10-23 20:52:29.296 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:52:39.303 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:52:39 + → module: 'TaskScheduler' +2025-10-23 20:52:39.303 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:52:49.328 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:52:49 + → module: 'TaskScheduler' +2025-10-23 20:52:49.328 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:52:59.354 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:52:59 + → module: 'TaskScheduler' +2025-10-23 20:52:59.354 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:53:09.362 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:53:09 + → module: 'TaskScheduler' +2025-10-23 20:53:09.362 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:53:19.369 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:53:19 + → module: 'TaskScheduler' +2025-10-23 20:53:19.369 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:53:29.378 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:53:29 + → module: 'TaskScheduler' +2025-10-23 20:53:29.378 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:53:39.385 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:53:39 + → module: 'TaskScheduler' +2025-10-23 20:53:39.385 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:53:49.392 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:53:49 + → module: 'TaskScheduler' +2025-10-23 20:53:49.392 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:53:59.421 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:53:59 + → module: 'TaskScheduler' +2025-10-23 20:53:59.421 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:54:09.428 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:54:09 + → module: 'TaskScheduler' +2025-10-23 20:54:09.428 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:54:19.435 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:54:19 + → module: 'TaskScheduler' +2025-10-23 20:54:19.435 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:54:29.464 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:54:29 + → module: 'TaskScheduler' +2025-10-23 20:54:29.464 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:54:39.488 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:54:39 + → module: 'TaskScheduler' +2025-10-23 20:54:39.488 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:54:49.495 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:54:49 + → module: 'TaskScheduler' +2025-10-23 20:54:49.495 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:54:59.503 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:54:59 + → module: 'TaskScheduler' +2025-10-23 20:54:59.503 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:55:09.510 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:55:09 + → module: 'TaskScheduler' +2025-10-23 20:55:09.511 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:55:09.518 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:55:09.566 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 20:55:09.566 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:55:09.567 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 20:55:09.567 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 20:55:09.567 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 20:55:09.590 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 20:55:09.595 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 20:55:09.596 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 20:55:09.596 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 12:43:45 + → module: 'NewsAPIClient' +2025-10-23 20:55:09.597 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 12:43:45 + → module: 'NewsAPIClient' +2025-10-23 20:55:09.597 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 20:55:10.028 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:55:10.042 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:55:10.092 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:55:10.365 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 20:55:10.366 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 20:55:10.367 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.77秒 + → module: 'NewsAPIClient' +2025-10-23 20:55:10.367 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 20:55:10.368 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 20:55:10.368 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 20:55:10.370 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 20:55:10.371 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 12:43:45 + → module: 'NewsAPIClient' +2025-10-23 20:55:10.372 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 12:43:45 + → module: 'NewsAPIClient' +2025-10-23 20:55:10.372 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.81秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 20:55:10.401 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 20:55:10.402 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 20:55:19.568 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:55:19 + → module: 'TaskScheduler' +2025-10-23 20:55:19.569 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:55:29.599 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:55:29 + → module: 'TaskScheduler' +2025-10-23 20:55:29.599 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:55:39.625 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:55:39 + → module: 'TaskScheduler' +2025-10-23 20:55:39.625 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:55:49.633 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:55:49 + → module: 'TaskScheduler' +2025-10-23 20:55:49.633 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:55:59.641 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:55:59 + → module: 'TaskScheduler' +2025-10-23 20:55:59.641 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:56:09.668 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:56:09 + → module: 'TaskScheduler' +2025-10-23 20:56:09.668 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:56:19.676 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:56:19 + → module: 'TaskScheduler' +2025-10-23 20:56:19.676 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:56:29.684 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:56:29 + → module: 'TaskScheduler' +2025-10-23 20:56:29.684 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:56:39.692 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:56:39 + → module: 'TaskScheduler' +2025-10-23 20:56:39.693 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:56:49.699 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:56:49 + → module: 'TaskScheduler' +2025-10-23 20:56:49.699 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:56:59.708 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:56:59 + → module: 'TaskScheduler' +2025-10-23 20:56:59.708 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:57:09.716 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:57:09 + → module: 'TaskScheduler' +2025-10-23 20:57:09.716 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:57:19.740 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:57:19 + → module: 'TaskScheduler' +2025-10-23 20:57:19.740 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:57:29.748 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:57:29 + → module: 'TaskScheduler' +2025-10-23 20:57:29.748 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:57:39.777 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:57:39 + → module: 'TaskScheduler' +2025-10-23 20:57:39.777 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:57:49.784 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:57:49 + → module: 'TaskScheduler' +2025-10-23 20:57:49.784 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:57:59.812 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:57:59 + → module: 'TaskScheduler' +2025-10-23 20:57:59.813 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:58:09.838 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:58:09 + → module: 'TaskScheduler' +2025-10-23 20:58:09.838 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:58:19.846 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:58:19 + → module: 'TaskScheduler' +2025-10-23 20:58:19.847 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:58:29.854 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:58:29 + → module: 'TaskScheduler' +2025-10-23 20:58:29.854 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:58:39.863 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:58:39 + → module: 'TaskScheduler' +2025-10-23 20:58:39.863 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:58:49.884 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:58:49 + → module: 'TaskScheduler' +2025-10-23 20:58:49.884 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:58:59.891 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:58:59 + → module: 'TaskScheduler' +2025-10-23 20:58:59.891 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:59:09.901 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:59:09 + → module: 'TaskScheduler' +2025-10-23 20:59:09.901 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:59:19.907 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:59:19 + → module: 'TaskScheduler' +2025-10-23 20:59:19.907 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:59:29.916 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:59:29 + → module: 'TaskScheduler' +2025-10-23 20:59:29.916 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:59:39.924 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:59:39 + → module: 'TaskScheduler' +2025-10-23 20:59:39.924 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:59:49.931 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:59:49 + → module: 'TaskScheduler' +2025-10-23 20:59:49.931 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 20:59:59.940 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 20:59:59 + → module: 'TaskScheduler' +2025-10-23 20:59:59.940 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:00:09.949 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:00:09 + → module: 'TaskScheduler' +2025-10-23 21:00:09.949 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:00:09.957 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:00:10.000 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 21:00:10.002 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:00:10.002 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 21:00:10.002 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 21:00:10.003 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 21:00:10.006 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 21:00:10.024 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 21:00:10.025 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 21:00:10.026 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 12:43:45 + → module: 'NewsAPIClient' +2025-10-23 21:00:10.026 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 12:43:45 + → module: 'NewsAPIClient' +2025-10-23 21:00:10.026 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 21:00:10.451 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:00:10.462 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:00:10.471 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:00:10.803 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:00:10.805 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 21:00:10.805 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.78秒 + → module: 'NewsAPIClient' +2025-10-23 21:00:10.805 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 21:00:10.807 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 21:00:10.808 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 21:00:10.808 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 21:00:10.808 | DEBUG | rss_subscriptions:235 - 处理条目 1: 高市早苗内阁“明显右转”,日本开启“保守暴走”时代?| 国际识局 + → module: 'NewsAPIClient' +2025-10-23 21:00:10.811 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 21:00:10.814 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 21:00:10.815 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 21:00:10.822 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 21:00:10.823 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 21:00:10.824 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 12:56:29 + → module: 'NewsAPIClient' +2025-10-23 21:00:10.825 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 12:56:29 + → module: 'NewsAPIClient' +2025-10-23 21:00:10.825 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.82秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 21:00:10.833 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 21:00:10.833 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:00:20.003 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:00:20 + → module: 'TaskScheduler' +2025-10-23 21:00:20.003 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:00:30.012 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:00:30 + → module: 'TaskScheduler' +2025-10-23 21:00:30.012 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:00:40.020 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:00:40 + → module: 'TaskScheduler' +2025-10-23 21:00:40.020 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:00:50.028 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:00:50 + → module: 'TaskScheduler' +2025-10-23 21:00:50.028 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:01:00.036 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:01:00 + → module: 'TaskScheduler' +2025-10-23 21:01:00.036 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:01:10.043 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:01:10 + → module: 'TaskScheduler' +2025-10-23 21:01:10.043 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:01:20.051 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:01:20 + → module: 'TaskScheduler' +2025-10-23 21:01:20.051 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:01:30.075 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:01:30 + → module: 'TaskScheduler' +2025-10-23 21:01:30.075 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:01:40.083 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:01:40 + → module: 'TaskScheduler' +2025-10-23 21:01:40.083 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:01:50.092 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:01:50 + → module: 'TaskScheduler' +2025-10-23 21:01:50.092 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:02:00.121 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:02:00 + → module: 'TaskScheduler' +2025-10-23 21:02:00.121 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:02:10.139 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:02:10 + → module: 'TaskScheduler' +2025-10-23 21:02:10.139 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:02:20.147 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:02:20 + → module: 'TaskScheduler' +2025-10-23 21:02:20.147 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:02:30.156 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:02:30 + → module: 'TaskScheduler' +2025-10-23 21:02:30.156 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:02:40.163 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:02:40 + → module: 'TaskScheduler' +2025-10-23 21:02:40.163 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:02:50.192 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:02:50 + → module: 'TaskScheduler' +2025-10-23 21:02:50.192 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:03:00.199 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:03:00 + → module: 'TaskScheduler' +2025-10-23 21:03:00.199 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:03:10.206 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:03:10 + → module: 'TaskScheduler' +2025-10-23 21:03:10.206 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:03:20.230 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:03:20 + → module: 'TaskScheduler' +2025-10-23 21:03:20.230 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:03:30.238 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:03:30 + → module: 'TaskScheduler' +2025-10-23 21:03:30.238 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:03:40.270 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:03:40 + → module: 'TaskScheduler' +2025-10-23 21:03:40.270 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:03:50.296 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:03:50 + → module: 'TaskScheduler' +2025-10-23 21:03:50.296 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:04:00.304 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:04:00 + → module: 'TaskScheduler' +2025-10-23 21:04:00.304 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:04:10.310 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:04:10 + → module: 'TaskScheduler' +2025-10-23 21:04:10.310 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:04:20.319 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:04:20 + → module: 'TaskScheduler' +2025-10-23 21:04:20.319 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:04:30.328 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:04:30 + → module: 'TaskScheduler' +2025-10-23 21:04:30.329 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:04:40.350 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:04:40 + → module: 'TaskScheduler' +2025-10-23 21:04:40.350 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:04:50.356 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:04:50 + → module: 'TaskScheduler' +2025-10-23 21:04:50.356 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:05:00.368 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:05:00 + → module: 'TaskScheduler' +2025-10-23 21:05:00.368 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:05:00.376 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:05:00.384 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 21:05:00.384 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:05:00.384 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 21:05:00.386 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 21:05:00.386 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 21:05:00.389 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 21:05:00.405 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 21:05:00.406 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 21:05:00.406 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 12:56:29 + → module: 'NewsAPIClient' +2025-10-23 21:05:00.406 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 12:56:29 + → module: 'NewsAPIClient' +2025-10-23 21:05:00.407 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 21:05:00.847 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:05:00.917 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:05:00.949 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:05:01.265 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:05:01.266 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 21:05:01.267 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.86秒 + → module: 'NewsAPIClient' +2025-10-23 21:05:01.267 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 21:05:01.268 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 21:05:01.268 | DEBUG | rss_subscriptions:235 - 处理条目 1: 扎哈罗娃:欧盟制裁拓展空间已近极限,俄保留回应权力 + → module: 'NewsAPIClient' +2025-10-23 21:05:01.289 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 21:05:01.291 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 21:05:01.292 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 21:05:01.301 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 21:05:01.302 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 21:05:01.302 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 21:05:01.304 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 21:05:01.304 | DEBUG | rss_subscriptions:235 - 处理条目 1: 西藏山南市农村寄递物流体系建设实现寄递服务全覆盖 + → module: 'NewsAPIClient' +2025-10-23 21:05:01.305 | DEBUG | rss_subscriptions:235 - 处理条目 2: 跨国药企高层:进博会强大“溢出效应”成全球创新成果落地“加速器” + → module: 'NewsAPIClient' +2025-10-23 21:05:01.305 | DEBUG | rss_subscriptions:235 - 处理条目 3: 第七届全国秋季古旧书博览会北京潘家园启幕 + → module: 'NewsAPIClient' +2025-10-23 21:05:01.305 | DEBUG | rss_subscriptions:235 - 处理条目 4: 扎哈罗娃:欧盟制裁拓展空间已近极限,俄保留回应权力 + → module: 'NewsAPIClient' +2025-10-23 21:05:01.308 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 21:05:01.309 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 21:05:01.310 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 4 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 21:05:01.329 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 3 + → error_message: "Duplicate entry '扎哈罗娃:欧盟制裁拓展空间已近极限,俄保留å' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '扎哈罗娃:欧盟制裁拓展空间已近极限,俄保留回应权力...', '文章链接': 'http://www.chinanews.com/gj/2025/10-23/10503483.shtml...', '文章摘要': '中新网10月23日电 据俄新社等俄罗斯媒体报道,当地时间23日,俄罗斯外交部发言人扎哈罗娃表示,欧盟对俄罗斯实施进一步制裁的拓展空间已基本耗尽,布鲁塞尔方面实... +2025-10-23 21:05:01.330 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 4 + → total_inserted: 3 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-23 21:05:01.330 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 3, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '扎哈罗娃:欧盟制裁拓展空间已近极限,俄保留å' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 3, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '扎哈罗娃:欧盟制裁拓展空间已近极限,俄保留å' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '扎哈罗娃:... +2025-10-23 21:05:01.331 | INFO | rss_subscriptions:259 - 成功写入 3/4 条记录 + → module: 'NewsAPIClient' +2025-10-23 21:05:01.332 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 13:03:42 + → module: 'NewsAPIClient' +2025-10-23 21:05:01.332 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 13:03:42 + → module: 'NewsAPIClient' +2025-10-23 21:05:01.333 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.95秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 21:05:01.340 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 21:05:01.341 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:05:10.387 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:05:10 + → module: 'TaskScheduler' +2025-10-23 21:05:10.387 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:05:20.395 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:05:20 + → module: 'TaskScheduler' +2025-10-23 21:05:20.395 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:05:30.403 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:05:30 + → module: 'TaskScheduler' +2025-10-23 21:05:30.403 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:05:40.411 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:05:40 + → module: 'TaskScheduler' +2025-10-23 21:05:40.411 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:05:50.441 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:05:50 + → module: 'TaskScheduler' +2025-10-23 21:05:50.441 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:06:00.471 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:06:00 + → module: 'TaskScheduler' +2025-10-23 21:06:00.471 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:06:10.502 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:06:10 + → module: 'TaskScheduler' +2025-10-23 21:06:10.502 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:06:20.524 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:06:20 + → module: 'TaskScheduler' +2025-10-23 21:06:20.524 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:06:30.533 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:06:30 + → module: 'TaskScheduler' +2025-10-23 21:06:30.533 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:06:40.561 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:06:40 + → module: 'TaskScheduler' +2025-10-23 21:06:40.562 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:06:50.584 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:06:50 + → module: 'TaskScheduler' +2025-10-23 21:06:50.584 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:07:00.591 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:07:00 + → module: 'TaskScheduler' +2025-10-23 21:07:00.591 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:07:10.599 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:07:10 + → module: 'TaskScheduler' +2025-10-23 21:07:10.599 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:07:20.607 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:07:20 + → module: 'TaskScheduler' +2025-10-23 21:07:20.607 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:07:30.630 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:07:30 + → module: 'TaskScheduler' +2025-10-23 21:07:30.630 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:07:40.638 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:07:40 + → module: 'TaskScheduler' +2025-10-23 21:07:40.638 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:07:50.646 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:07:50 + → module: 'TaskScheduler' +2025-10-23 21:07:50.646 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:08:00.668 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:08:00 + → module: 'TaskScheduler' +2025-10-23 21:08:00.668 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:08:00.698 | INFO | main:87 - 小时任务统计 + → module: 'Main' + → 总任务数: 12 + → 成功: 12 + → 失败: 0 +2025-10-23 21:08:10.700 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:08:10 + → module: 'TaskScheduler' +2025-10-23 21:08:10.700 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:08:20.707 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:08:20 + → module: 'TaskScheduler' +2025-10-23 21:08:20.707 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:08:30.714 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:08:30 + → module: 'TaskScheduler' +2025-10-23 21:08:30.714 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:08:40.721 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:08:40 + → module: 'TaskScheduler' +2025-10-23 21:08:40.721 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:08:50.739 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:08:50 + → module: 'TaskScheduler' +2025-10-23 21:08:50.740 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:09:00.773 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:09:00 + → module: 'TaskScheduler' +2025-10-23 21:09:00.773 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:09:10.781 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:09:10 + → module: 'TaskScheduler' +2025-10-23 21:09:10.781 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:09:20.789 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:09:20 + → module: 'TaskScheduler' +2025-10-23 21:09:20.789 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:09:30.797 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:09:30 + → module: 'TaskScheduler' +2025-10-23 21:09:30.797 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:09:40.804 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:09:40 + → module: 'TaskScheduler' +2025-10-23 21:09:40.804 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:09:50.812 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:09:50 + → module: 'TaskScheduler' +2025-10-23 21:09:50.812 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:10:00.819 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:10:00 + → module: 'TaskScheduler' +2025-10-23 21:10:00.819 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:10:00.851 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:10:00.903 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 21:10:00.904 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:10:00.904 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 21:10:00.904 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 21:10:00.904 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 21:10:00.907 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 21:10:00.911 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 21:10:00.911 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 21:10:00.912 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 13:03:42 + → module: 'NewsAPIClient' +2025-10-23 21:10:00.912 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 13:03:42 + → module: 'NewsAPIClient' +2025-10-23 21:10:00.912 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 21:10:01.355 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:10:01.366 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:10:01.376 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:10:01.683 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:10:01.685 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 21:10:01.686 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.77秒 + → module: 'NewsAPIClient' +2025-10-23 21:10:01.686 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 21:10:01.688 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 21:10:01.688 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 21:10:01.689 | DEBUG | rss_subscriptions:235 - 处理条目 1: 风险谁来担?比利时与卢森堡首相就对乌贷款方案提出关键条件 + → module: 'NewsAPIClient' +2025-10-23 21:10:01.717 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 21:10:01.719 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 21:10:01.720 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 21:10:01.727 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 21:10:01.728 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 21:10:01.728 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 21:10:01.729 | DEBUG | rss_subscriptions:235 - 处理条目 1: 风险谁来担?比利时与卢森堡首相就对乌贷款方案提出关键条件 + → module: 'NewsAPIClient' +2025-10-23 21:10:01.732 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 21:10:01.733 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 21:10:01.734 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 21:10:01.739 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 0 + → error_message: "Duplicate entry '风险谁来担?比利时与卢森堡首相就对乌贷款方æ' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '风险谁来担?比利时与卢森堡首相就对乌贷款方案提出关键条件...', '文章链接': 'http://www.chinanews.com/gj/2025/10-23/10503492.shtml...', '文章摘要': '中新网10月23日电 据外媒报道,当地时间23日,比利时首相德韦弗在当日举行的欧盟领导人会议上表示,除非欧盟成员国在财政和法律风险方面实现共担,并动用各... +2025-10-23 21:10:01.739 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 0 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-23 21:10:01.739 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '风险谁来担?比利时与卢森堡首相就对乌贷款方æ' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '风险谁来担?比利时与卢森堡首相就对乌贷款方æ' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '风险谁来担... +2025-10-23 21:10:01.740 | INFO | rss_subscriptions:259 - 成功写入 0/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 21:10:01.741 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 13:06:00 + → module: 'NewsAPIClient' +2025-10-23 21:10:01.741 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 13:06:00 + → module: 'NewsAPIClient' +2025-10-23 21:10:01.742 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.84秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 21:10:01.771 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 21:10:01.771 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:10:10.906 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:10:10 + → module: 'TaskScheduler' +2025-10-23 21:10:10.906 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:10:20.914 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:10:20 + → module: 'TaskScheduler' +2025-10-23 21:10:20.914 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:10:30.945 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:10:30 + → module: 'TaskScheduler' +2025-10-23 21:10:30.945 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:10:40.953 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:10:40 + → module: 'TaskScheduler' +2025-10-23 21:10:40.954 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:10:50.965 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:10:50 + → module: 'TaskScheduler' +2025-10-23 21:10:50.965 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:11:00.973 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:11:00 + → module: 'TaskScheduler' +2025-10-23 21:11:00.973 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:11:10.980 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:11:10 + → module: 'TaskScheduler' +2025-10-23 21:11:10.980 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:11:20.988 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:11:20 + → module: 'TaskScheduler' +2025-10-23 21:11:20.988 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:11:30.997 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:11:30 + → module: 'TaskScheduler' +2025-10-23 21:11:30.997 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:11:41.028 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:11:41 + → module: 'TaskScheduler' +2025-10-23 21:11:41.028 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:11:51.036 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:11:51 + → module: 'TaskScheduler' +2025-10-23 21:11:51.036 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:12:01.043 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:12:01 + → module: 'TaskScheduler' +2025-10-23 21:12:01.043 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:12:11.072 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:12:11 + → module: 'TaskScheduler' +2025-10-23 21:12:11.072 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:12:21.081 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:12:21 + → module: 'TaskScheduler' +2025-10-23 21:12:21.082 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:12:31.090 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:12:31 + → module: 'TaskScheduler' +2025-10-23 21:12:31.090 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:12:41.121 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:12:41 + → module: 'TaskScheduler' +2025-10-23 21:12:41.121 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:12:51.129 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:12:51 + → module: 'TaskScheduler' +2025-10-23 21:12:51.129 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:13:01.137 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:13:01 + → module: 'TaskScheduler' +2025-10-23 21:13:01.137 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:13:11.145 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:13:11 + → module: 'TaskScheduler' +2025-10-23 21:13:11.145 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:13:21.155 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:13:21 + → module: 'TaskScheduler' +2025-10-23 21:13:21.155 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:13:31.163 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:13:31 + → module: 'TaskScheduler' +2025-10-23 21:13:31.163 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:13:41.172 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:13:41 + → module: 'TaskScheduler' +2025-10-23 21:13:41.172 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:13:51.204 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:13:51 + → module: 'TaskScheduler' +2025-10-23 21:13:51.204 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:14:01.214 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:14:01 + → module: 'TaskScheduler' +2025-10-23 21:14:01.214 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:14:11.223 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:14:11 + → module: 'TaskScheduler' +2025-10-23 21:14:11.223 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:14:21.254 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:14:21 + → module: 'TaskScheduler' +2025-10-23 21:14:21.254 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:14:31.275 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:14:31 + → module: 'TaskScheduler' +2025-10-23 21:14:31.275 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:14:41.283 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:14:41 + → module: 'TaskScheduler' +2025-10-23 21:14:41.284 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:14:51.308 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:14:51 + → module: 'TaskScheduler' +2025-10-23 21:14:51.308 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:15:01.316 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:15:01 + → module: 'TaskScheduler' +2025-10-23 21:15:01.316 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:15:01.327 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:15:01.350 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 21:15:01.350 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:15:01.351 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 21:15:01.351 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 21:15:01.351 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 21:15:01.354 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 21:15:01.358 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 21:15:01.358 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 21:15:01.359 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 13:06:00 + → module: 'NewsAPIClient' +2025-10-23 21:15:01.359 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 13:06:00 + → module: 'NewsAPIClient' +2025-10-23 21:15:01.359 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 21:15:01.761 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:15:01.776 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:15:01.786 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:15:02.160 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:15:02.162 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 21:15:02.163 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.80秒 + → module: 'NewsAPIClient' +2025-10-23 21:15:02.163 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 21:15:02.165 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 21:15:02.165 | DEBUG | rss_subscriptions:235 - 处理条目 1: “十五五”,中国式现代化将实现关键一跃 + → module: 'NewsAPIClient' +2025-10-23 21:15:02.168 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 21:15:02.170 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 21:15:02.171 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 21:15:02.178 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 21:15:02.179 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 21:15:02.179 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 21:15:02.181 | DEBUG | rss_subscriptions:235 - 处理条目 1: 党的二十届四中全会公报,这些表述值得关注 + → module: 'NewsAPIClient' +2025-10-23 21:15:02.184 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 21:15:02.185 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 21:15:02.187 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 21:15:02.193 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 21:15:02.194 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 21:15:02.194 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 21:15:02.194 | DEBUG | rss_subscriptions:235 - 处理条目 1: 党的二十届四中全会公报,这些表述值得关注 + → module: 'NewsAPIClient' +2025-10-23 21:15:02.194 | DEBUG | rss_subscriptions:235 - 处理条目 2: 专家学者古都共探城市更新“密码” + → module: 'NewsAPIClient' +2025-10-23 21:15:02.196 | DEBUG | rss_subscriptions:235 - 处理条目 3: “十五五”,中国式现代化将实现关键一跃 + → module: 'NewsAPIClient' +2025-10-23 21:15:02.198 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 21:15:02.199 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 21:15:02.200 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 3 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 21:15:02.205 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 0 + → error_message: "Duplicate entry '党的二十届四中全会公报,这些表述值得关注-202' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '党的二十届四中全会公报,这些表述值得关注...', '文章链接': 'http://www.chinanews.com/gn/2025/10-23/10503495.shtml...', '文章摘要': '10月23日,中国共产党第二十届中央委员会第四次全体会议公报发布。这些表述值得关注!...', '发布时间': '2025-10-23 13:09:23...', '来... +2025-10-23 21:15:02.214 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 2 + → error_message: "Duplicate entry '“十五五”,中国式现代化将实现关键一跃-2025-1' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '“十五五”,中国式现代化将实现关键一跃...', '文章链接': 'http://www.chinanews.com/cj/2025/10-23/10503490.shtml...', '文章摘要': '未来五年的蓝图要来了。...', '发布时间': '2025-10-23 13:07:37...', '来源URL': 'https://www.chinanews.co... +2025-10-23 21:15:02.214 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 3 + → total_inserted: 1 + → total_duplicates: 2 + → total_failed: 0 + → failed_records_count: 2 +2025-10-23 21:15:02.214 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '党的二十届四中全会公报,这些表述值得关注-202' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 2, 'type': '... + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '党的二十届四中全会公报,这些表述值得关注-202' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '党的二... +2025-10-23 21:15:02.215 | INFO | rss_subscriptions:259 - 成功写入 1/3 条记录 + → module: 'NewsAPIClient' +2025-10-23 21:15:02.216 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 13:09:23 + → module: 'NewsAPIClient' +2025-10-23 21:15:02.216 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 13:09:23 + → module: 'NewsAPIClient' +2025-10-23 21:15:02.217 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.87秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 21:15:02.249 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 21:15:02.250 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:15:11.352 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:15:11 + → module: 'TaskScheduler' +2025-10-23 21:15:11.352 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:15:21.381 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:15:21 + → module: 'TaskScheduler' +2025-10-23 21:15:21.382 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:15:31.389 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:15:31 + → module: 'TaskScheduler' +2025-10-23 21:15:31.389 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:15:41.412 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:15:41 + → module: 'TaskScheduler' +2025-10-23 21:15:41.412 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:15:51.420 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:15:51 + → module: 'TaskScheduler' +2025-10-23 21:15:51.420 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:16:01.446 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:16:01 + → module: 'TaskScheduler' +2025-10-23 21:16:01.446 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:16:11.454 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:16:11 + → module: 'TaskScheduler' +2025-10-23 21:16:11.454 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:16:21.463 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:16:21 + → module: 'TaskScheduler' +2025-10-23 21:16:21.463 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:16:31.484 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:16:31 + → module: 'TaskScheduler' +2025-10-23 21:16:31.484 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:16:41.493 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:16:41 + → module: 'TaskScheduler' +2025-10-23 21:16:41.493 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:16:51.511 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:16:51 + → module: 'TaskScheduler' +2025-10-23 21:16:51.511 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:17:01.517 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:17:01 + → module: 'TaskScheduler' +2025-10-23 21:17:01.517 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:17:11.525 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:17:11 + → module: 'TaskScheduler' +2025-10-23 21:17:11.525 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:17:21.558 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:17:21 + → module: 'TaskScheduler' +2025-10-23 21:17:21.558 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:17:31.567 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:17:31 + → module: 'TaskScheduler' +2025-10-23 21:17:31.567 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:17:41.576 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:17:41 + → module: 'TaskScheduler' +2025-10-23 21:17:41.576 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:17:51.597 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:17:51 + → module: 'TaskScheduler' +2025-10-23 21:17:51.597 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:18:01.623 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:18:01 + → module: 'TaskScheduler' +2025-10-23 21:18:01.623 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:18:11.632 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:18:11 + → module: 'TaskScheduler' +2025-10-23 21:18:11.632 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:18:21.662 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:18:21 + → module: 'TaskScheduler' +2025-10-23 21:18:21.662 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:18:31.669 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:18:31 + → module: 'TaskScheduler' +2025-10-23 21:18:31.670 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:18:41.677 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:18:41 + → module: 'TaskScheduler' +2025-10-23 21:18:41.677 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:18:51.686 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:18:51 + → module: 'TaskScheduler' +2025-10-23 21:18:51.686 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:19:01.694 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:19:01 + → module: 'TaskScheduler' +2025-10-23 21:19:01.694 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:19:11.701 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:19:11 + → module: 'TaskScheduler' +2025-10-23 21:19:11.701 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:19:21.710 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:19:21 + → module: 'TaskScheduler' +2025-10-23 21:19:21.710 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:19:31.717 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:19:31 + → module: 'TaskScheduler' +2025-10-23 21:19:31.717 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:19:41.749 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:19:41 + → module: 'TaskScheduler' +2025-10-23 21:19:41.749 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:19:51.757 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:19:51 + → module: 'TaskScheduler' +2025-10-23 21:19:51.757 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:20:01.764 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:20:01 + → module: 'TaskScheduler' +2025-10-23 21:20:01.764 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:20:01.772 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:20:01.793 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 21:20:01.794 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:20:01.794 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 21:20:01.794 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 21:20:01.795 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 21:20:01.798 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 21:20:01.802 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 21:20:01.802 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 21:20:01.803 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 13:09:23 + → module: 'NewsAPIClient' +2025-10-23 21:20:01.803 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 13:09:23 + → module: 'NewsAPIClient' +2025-10-23 21:20:01.803 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 21:20:02.194 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:20:02.206 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:20:02.229 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:20:02.542 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:20:02.543 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 21:20:02.544 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.74秒 + → module: 'NewsAPIClient' +2025-10-23 21:20:02.545 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 21:20:02.546 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 21:20:02.547 | DEBUG | rss_subscriptions:235 - 处理条目 1: 江西吉安构建多极支撑现代化产业体系 加快高质量发展 + → module: 'NewsAPIClient' +2025-10-23 21:20:02.551 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 21:20:02.553 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 21:20:02.554 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 21:20:02.574 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 21:20:02.575 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 21:20:02.576 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 21:20:02.578 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 21:20:02.579 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 13:14:37 + → module: 'NewsAPIClient' +2025-10-23 21:20:02.580 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 13:14:37 + → module: 'NewsAPIClient' +2025-10-23 21:20:02.580 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.79秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 21:20:02.588 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 21:20:02.588 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:20:11.796 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:20:11 + → module: 'TaskScheduler' +2025-10-23 21:20:11.796 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:20:21.804 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:20:21 + → module: 'TaskScheduler' +2025-10-23 21:20:21.804 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:20:31.814 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:20:31 + → module: 'TaskScheduler' +2025-10-23 21:20:31.814 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:20:41.837 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:20:41 + → module: 'TaskScheduler' +2025-10-23 21:20:41.837 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:20:51.845 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:20:51 + → module: 'TaskScheduler' +2025-10-23 21:20:51.845 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:21:01.854 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:21:01 + → module: 'TaskScheduler' +2025-10-23 21:21:01.854 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:21:11.862 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:21:11 + → module: 'TaskScheduler' +2025-10-23 21:21:11.862 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:21:21.888 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:21:21 + → module: 'TaskScheduler' +2025-10-23 21:21:21.888 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:21:31.906 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:21:31 + → module: 'TaskScheduler' +2025-10-23 21:21:31.907 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:21:41.929 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:21:41 + → module: 'TaskScheduler' +2025-10-23 21:21:41.929 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:21:51.938 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:21:51 + → module: 'TaskScheduler' +2025-10-23 21:21:51.938 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:22:01.946 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:22:01 + → module: 'TaskScheduler' +2025-10-23 21:22:01.946 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:22:11.966 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:22:11 + → module: 'TaskScheduler' +2025-10-23 21:22:11.967 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:22:21.974 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:22:21 + → module: 'TaskScheduler' +2025-10-23 21:22:21.975 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:22:31.985 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:22:31 + → module: 'TaskScheduler' +2025-10-23 21:22:31.985 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:22:41.993 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:22:41 + → module: 'TaskScheduler' +2025-10-23 21:22:41.993 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:22:52.010 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:22:52 + → module: 'TaskScheduler' +2025-10-23 21:22:52.010 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:23:02.017 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:23:02 + → module: 'TaskScheduler' +2025-10-23 21:23:02.017 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:23:12.043 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:23:12 + → module: 'TaskScheduler' +2025-10-23 21:23:12.043 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:23:22.062 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:23:22 + → module: 'TaskScheduler' +2025-10-23 21:23:22.062 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:23:32.070 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:23:32 + → module: 'TaskScheduler' +2025-10-23 21:23:32.070 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:23:42.100 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:23:42 + → module: 'TaskScheduler' +2025-10-23 21:23:42.100 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:23:52.127 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:23:52 + → module: 'TaskScheduler' +2025-10-23 21:23:52.127 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:24:02.153 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:24:02 + → module: 'TaskScheduler' +2025-10-23 21:24:02.153 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:24:12.164 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:24:12 + → module: 'TaskScheduler' +2025-10-23 21:24:12.164 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:24:22.187 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:24:22 + → module: 'TaskScheduler' +2025-10-23 21:24:22.187 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:24:32.219 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:24:32 + → module: 'TaskScheduler' +2025-10-23 21:24:32.219 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:24:42.230 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:24:42 + → module: 'TaskScheduler' +2025-10-23 21:24:42.230 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:24:52.249 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:24:52 + → module: 'TaskScheduler' +2025-10-23 21:24:52.249 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:25:02.280 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:25:02 + → module: 'TaskScheduler' +2025-10-23 21:25:02.280 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:25:02.311 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:25:02.319 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 21:25:02.320 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:25:02.320 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 21:25:02.321 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 21:25:02.321 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 21:25:02.338 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 21:25:02.353 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 21:25:02.354 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 21:25:02.354 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 13:14:37 + → module: 'NewsAPIClient' +2025-10-23 21:25:02.354 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 13:14:37 + → module: 'NewsAPIClient' +2025-10-23 21:25:02.355 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 21:25:02.774 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:25:02.784 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:25:02.809 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:25:03.097 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:25:03.099 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 21:25:03.100 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.74秒 + → module: 'NewsAPIClient' +2025-10-23 21:25:03.100 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 21:25:03.101 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 21:25:03.101 | DEBUG | rss_subscriptions:235 - 处理条目 1: 经纬线·绿色回响 + → module: 'NewsAPIClient' +2025-10-23 21:25:03.104 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 21:25:03.105 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 21:25:03.106 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 21:25:03.128 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 21:25:03.129 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 21:25:03.129 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 21:25:03.130 | DEBUG | rss_subscriptions:235 - 处理条目 1: 通车30周年 塔里木沙漠公路为新疆经济助力 + → module: 'NewsAPIClient' +2025-10-23 21:25:03.130 | DEBUG | rss_subscriptions:235 - 处理条目 2: (经济观察)从四中全会关键表述看中国经济动向 + → module: 'NewsAPIClient' +2025-10-23 21:25:03.130 | DEBUG | rss_subscriptions:235 - 处理条目 3: 长江中游首个“船电分离”式充换电运输航线启运 + → module: 'NewsAPIClient' +2025-10-23 21:25:03.134 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 21:25:03.136 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 21:25:03.137 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 3 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 21:25:03.154 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 3 + → total_inserted: 3 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 21:25:03.155 | INFO | rss_subscriptions:259 - 成功写入 3/3 条记录 + → module: 'NewsAPIClient' +2025-10-23 21:25:03.155 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 21:25:03.155 | DEBUG | rss_subscriptions:235 - 处理条目 1: 经纬线·绿色回响 + → module: 'NewsAPIClient' +2025-10-23 21:25:03.174 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 21:25:03.175 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 21:25:03.177 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 21:25:03.181 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 0 + → error_message: "Duplicate entry '经纬线·绿色回响-2025-10-23 13:15:25' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '经纬线·绿色回响...', '文章链接': 'http://www.chinanews.com/gn/2025/10-23/10503498.shtml...', '文章摘要': '“中国式现代化是人与自然和谐共生的现代化。”当呼啸的风在沙漠崛起的“光伏长城”前降低了分贝,当塞罕坝百万亩林海的涛声谱写向绿而行的乐章。听!这是“十四五”时期的绿色回响。...', '发布时间... +2025-10-23 21:25:03.182 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 0 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-23 21:25:03.182 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '经纬线·绿色回响-2025-10-23 13:15:25' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '经纬线·绿色回响-2025-10-23 13:15:25' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': ... +2025-10-23 21:25:03.183 | INFO | rss_subscriptions:259 - 成功写入 0/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 21:25:03.184 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 13:20:25 + → module: 'NewsAPIClient' +2025-10-23 21:25:03.184 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 13:20:25 + → module: 'NewsAPIClient' +2025-10-23 21:25:03.184 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.86秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 21:25:03.210 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 21:25:03.211 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:25:12.322 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:25:12 + → module: 'TaskScheduler' +2025-10-23 21:25:12.322 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:25:22.331 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:25:22 + → module: 'TaskScheduler' +2025-10-23 21:25:22.331 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:25:32.356 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:25:32 + → module: 'TaskScheduler' +2025-10-23 21:25:32.356 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:25:42.366 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:25:42 + → module: 'TaskScheduler' +2025-10-23 21:25:42.366 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:25:52.375 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:25:52 + → module: 'TaskScheduler' +2025-10-23 21:25:52.375 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:26:02.396 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:26:02 + → module: 'TaskScheduler' +2025-10-23 21:26:02.396 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:26:12.416 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:26:12 + → module: 'TaskScheduler' +2025-10-23 21:26:12.416 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:26:22.422 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:26:22 + → module: 'TaskScheduler' +2025-10-23 21:26:22.422 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:26:32.432 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:26:32 + → module: 'TaskScheduler' +2025-10-23 21:26:32.432 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:26:42.440 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:26:42 + → module: 'TaskScheduler' +2025-10-23 21:26:42.440 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:26:52.472 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:26:52 + → module: 'TaskScheduler' +2025-10-23 21:26:52.472 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:27:02.494 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:27:02 + → module: 'TaskScheduler' +2025-10-23 21:27:02.494 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:27:12.502 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:27:12 + → module: 'TaskScheduler' +2025-10-23 21:27:12.502 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:27:22.511 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:27:22 + → module: 'TaskScheduler' +2025-10-23 21:27:22.511 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:27:32.519 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:27:32 + → module: 'TaskScheduler' +2025-10-23 21:27:32.519 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:27:42.528 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:27:42 + → module: 'TaskScheduler' +2025-10-23 21:27:42.528 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:27:52.535 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:27:52 + → module: 'TaskScheduler' +2025-10-23 21:27:52.535 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:28:02.560 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:28:02 + → module: 'TaskScheduler' +2025-10-23 21:28:02.560 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:28:12.569 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:28:12 + → module: 'TaskScheduler' +2025-10-23 21:28:12.569 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:28:22.596 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:28:22 + → module: 'TaskScheduler' +2025-10-23 21:28:22.597 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:28:32.608 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:28:32 + → module: 'TaskScheduler' +2025-10-23 21:28:32.608 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:28:42.633 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:28:42 + → module: 'TaskScheduler' +2025-10-23 21:28:42.633 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:28:52.641 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:28:52 + → module: 'TaskScheduler' +2025-10-23 21:28:52.641 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:29:02.649 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:29:02 + → module: 'TaskScheduler' +2025-10-23 21:29:02.649 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:29:12.657 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:29:12 + → module: 'TaskScheduler' +2025-10-23 21:29:12.657 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:29:22.665 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:29:22 + → module: 'TaskScheduler' +2025-10-23 21:29:22.665 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:29:32.673 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:29:32 + → module: 'TaskScheduler' +2025-10-23 21:29:32.673 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:29:42.682 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:29:42 + → module: 'TaskScheduler' +2025-10-23 21:29:42.682 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:29:52.690 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:29:52 + → module: 'TaskScheduler' +2025-10-23 21:29:52.690 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:30:02.700 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:30:02 + → module: 'TaskScheduler' +2025-10-23 21:30:02.700 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:30:02.728 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:30:02.750 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 21:30:02.751 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:30:02.751 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 21:30:02.751 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 21:30:02.752 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 21:30:02.755 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 21:30:02.759 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 21:30:02.759 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 21:30:02.760 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 13:20:25 + → module: 'NewsAPIClient' +2025-10-23 21:30:02.760 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 13:20:25 + → module: 'NewsAPIClient' +2025-10-23 21:30:02.760 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 21:30:03.210 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:30:03.248 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:30:03.268 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:30:03.546 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:30:03.548 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 21:30:03.549 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.79秒 + → module: 'NewsAPIClient' +2025-10-23 21:30:03.549 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 21:30:03.550 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 21:30:03.550 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 21:30:03.552 | DEBUG | rss_subscriptions:235 - 处理条目 1: 国家外汇局:将研究长期限、小币种等外汇市场发展问题 + → module: 'NewsAPIClient' +2025-10-23 21:30:03.552 | DEBUG | rss_subscriptions:235 - 处理条目 2: (经济观察)北京风能展明星产品反映“大风车”新风向 + → module: 'NewsAPIClient' +2025-10-23 21:30:03.552 | DEBUG | rss_subscriptions:235 - 处理条目 3: 前9个月中国邮政寄递业务量同比增15% + → module: 'NewsAPIClient' +2025-10-23 21:30:03.554 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 21:30:03.556 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 21:30:03.556 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 3 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 21:30:03.575 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 3 + → total_inserted: 3 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 21:30:03.576 | INFO | rss_subscriptions:259 - 成功写入 3/3 条记录 + → module: 'NewsAPIClient' +2025-10-23 21:30:03.576 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 21:30:03.577 | DEBUG | rss_subscriptions:235 - 处理条目 1: 10月23日新闻夜读 + → module: 'NewsAPIClient' +2025-10-23 21:30:03.577 | DEBUG | rss_subscriptions:235 - 处理条目 2: 渝港签署两项协议深化专业领域合作 + → module: 'NewsAPIClient' +2025-10-23 21:30:03.577 | DEBUG | rss_subscriptions:235 - 处理条目 3: 第六届福建省大学生戏剧节举行 八闽大地奏响青春组曲 + → module: 'NewsAPIClient' +2025-10-23 21:30:03.577 | DEBUG | rss_subscriptions:235 - 处理条目 4: (经济观察)北京风能展明星产品反映“大风车”新风向 + → module: 'NewsAPIClient' +2025-10-23 21:30:03.577 | DEBUG | rss_subscriptions:235 - 处理条目 5: 探访哈军工纪念馆 2万余件展品展报国担当精神 + → module: 'NewsAPIClient' +2025-10-23 21:30:03.577 | DEBUG | rss_subscriptions:235 - 处理条目 6: 前9个月中国邮政寄递业务量同比增15% + → module: 'NewsAPIClient' +2025-10-23 21:30:03.577 | DEBUG | rss_subscriptions:235 - 处理条目 7: 十五运会游泳(跳水)项目门票将于25日面向公众销售 + → module: 'NewsAPIClient' +2025-10-23 21:30:03.577 | DEBUG | rss_subscriptions:235 - 处理条目 8: 第138届广交会第二期开展 卫浴设备受欢迎 + → module: 'NewsAPIClient' +2025-10-23 21:30:03.580 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 21:30:03.583 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 21:30:03.584 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 8 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 21:30:03.605 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 3 + → error_message: "Duplicate entry '(经济观察)北京风能展明星产品反映“大风车â' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '(经济观察)北京风能展明星产品反映“大风车”新风向...', '文章链接': 'http://www.chinanews.com/cj/2025/10-23/10503506.shtml...', '文章摘要': '中新社北京10月23日电 题:北京风能展明星产品反映“大风车”新风向...', '发布时间': '2025-10-23 13:24:55...', '来源UR... +2025-10-23 21:30:03.613 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 5 + → error_message: "Duplicate entry '前9个月中国邮政寄递业务量同比增15%-2025-10-23 13:' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '前9个月中国邮政寄递业务量同比增15%...', '文章链接': 'http://www.chinanews.com/cj/2025/10-23/10503505.shtml...', '文章摘要': '中新社北京10月23日电 (记者 刘育英)记者23日从中国国家邮政局获悉,前9个月,中国邮政行业寄递业务量累计完成1582.6亿件,同比增长15%。其中,快递业务量累计完... +2025-10-23 21:30:03.623 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 8 + → total_inserted: 6 + → total_duplicates: 2 + → total_failed: 0 + → failed_records_count: 2 +2025-10-23 21:30:03.623 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 3, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '(经济观察)北京风能展明星产品反映“大风车â' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 5, 'type': 'du... + → detailed_failed_records: [{'index': 3, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '(经济观察)北京风能展明星产品反映“大风车â' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '(经济观察... +2025-10-23 21:30:03.625 | INFO | rss_subscriptions:259 - 成功写入 6/8 条记录 + → module: 'NewsAPIClient' +2025-10-23 21:30:03.625 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 13:29:46 + → module: 'NewsAPIClient' +2025-10-23 21:30:03.625 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 13:29:46 + → module: 'NewsAPIClient' +2025-10-23 21:30:03.627 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.88秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 21:30:03.634 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 21:30:03.634 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:30:12.753 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:30:12 + → module: 'TaskScheduler' +2025-10-23 21:30:12.753 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:30:22.781 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:30:22 + → module: 'TaskScheduler' +2025-10-23 21:30:22.781 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:30:32.789 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:30:32 + → module: 'TaskScheduler' +2025-10-23 21:30:32.789 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:30:42.815 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:30:42 + → module: 'TaskScheduler' +2025-10-23 21:30:42.815 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:30:52.824 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:30:52 + → module: 'TaskScheduler' +2025-10-23 21:30:52.824 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:31:02.853 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:31:02 + → module: 'TaskScheduler' +2025-10-23 21:31:02.853 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:31:12.875 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:31:12 + → module: 'TaskScheduler' +2025-10-23 21:31:12.876 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:31:22.904 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:31:22 + → module: 'TaskScheduler' +2025-10-23 21:31:22.904 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:31:32.929 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:31:32 + → module: 'TaskScheduler' +2025-10-23 21:31:32.929 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:31:42.958 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:31:42 + → module: 'TaskScheduler' +2025-10-23 21:31:42.959 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:31:52.967 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:31:52 + → module: 'TaskScheduler' +2025-10-23 21:31:52.967 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:32:02.975 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:32:02 + → module: 'TaskScheduler' +2025-10-23 21:32:02.975 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:32:12.992 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:32:12 + → module: 'TaskScheduler' +2025-10-23 21:32:12.992 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:32:23.001 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:32:23 + → module: 'TaskScheduler' +2025-10-23 21:32:23.001 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:32:33.014 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:32:33 + → module: 'TaskScheduler' +2025-10-23 21:32:33.014 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:32:43.023 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:32:43 + → module: 'TaskScheduler' +2025-10-23 21:32:43.023 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:32:53.031 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:32:53 + → module: 'TaskScheduler' +2025-10-23 21:32:53.031 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:33:03.039 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:33:03 + → module: 'TaskScheduler' +2025-10-23 21:33:03.040 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:33:13.047 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:33:13 + → module: 'TaskScheduler' +2025-10-23 21:33:13.047 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:33:23.055 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:33:23 + → module: 'TaskScheduler' +2025-10-23 21:33:23.055 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:33:33.062 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:33:33 + → module: 'TaskScheduler' +2025-10-23 21:33:33.062 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:33:43.070 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:33:43 + → module: 'TaskScheduler' +2025-10-23 21:33:43.070 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:33:53.078 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:33:53 + → module: 'TaskScheduler' +2025-10-23 21:33:53.078 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:34:03.105 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:34:03 + → module: 'TaskScheduler' +2025-10-23 21:34:03.105 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:34:13.113 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:34:13 + → module: 'TaskScheduler' +2025-10-23 21:34:13.113 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:34:23.123 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:34:23 + → module: 'TaskScheduler' +2025-10-23 21:34:23.123 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:34:33.147 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:34:33 + → module: 'TaskScheduler' +2025-10-23 21:34:33.147 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:34:43.165 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:34:43 + → module: 'TaskScheduler' +2025-10-23 21:34:43.165 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:34:53.198 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:34:53 + → module: 'TaskScheduler' +2025-10-23 21:34:53.198 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:35:03.232 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:35:03 + → module: 'TaskScheduler' +2025-10-23 21:35:03.232 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:35:03.239 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:35:03.260 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 21:35:03.261 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:35:03.261 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 21:35:03.261 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 21:35:03.261 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 21:35:03.264 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 21:35:03.267 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 21:35:03.267 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 21:35:03.268 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 13:29:46 + → module: 'NewsAPIClient' +2025-10-23 21:35:03.268 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 13:29:46 + → module: 'NewsAPIClient' +2025-10-23 21:35:03.268 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 21:35:03.669 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:35:03.690 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:35:03.723 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:35:04.015 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:35:04.018 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 21:35:04.019 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.75秒 + → module: 'NewsAPIClient' +2025-10-23 21:35:04.019 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 21:35:04.020 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 21:35:04.021 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 21:35:04.022 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 21:35:04.022 | DEBUG | rss_subscriptions:235 - 处理条目 1: 香港特首李家超:把握国家发展机遇 发挥香港独特优势 + → module: 'NewsAPIClient' +2025-10-23 21:35:04.023 | DEBUG | rss_subscriptions:235 - 处理条目 2: 哈萨克斯坦阿拉木图州代表团赴青海了解特色产业发展 + → module: 'NewsAPIClient' +2025-10-23 21:35:04.023 | DEBUG | rss_subscriptions:235 - 处理条目 3: 广彩瓷上“画”全运:推动非遗与体育精神进一步融合 + → module: 'NewsAPIClient' +2025-10-23 21:35:04.023 | DEBUG | rss_subscriptions:235 - 处理条目 4: 高黎贡白眉长臂猿“声纹密码”在云南保山成功破解 + → module: 'NewsAPIClient' +2025-10-23 21:35:04.046 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 21:35:04.048 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 21:35:04.049 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 4 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 21:35:04.071 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 4 + → total_inserted: 4 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 21:35:04.072 | INFO | rss_subscriptions:259 - 成功写入 4/4 条记录 + → module: 'NewsAPIClient' +2025-10-23 21:35:04.073 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 13:34:12 + → module: 'NewsAPIClient' +2025-10-23 21:35:04.073 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 13:34:12 + → module: 'NewsAPIClient' +2025-10-23 21:35:04.074 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.81秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 21:35:04.083 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 21:35:04.083 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:35:13.262 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:35:13 + → module: 'TaskScheduler' +2025-10-23 21:35:13.262 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:35:23.270 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:35:23 + → module: 'TaskScheduler' +2025-10-23 21:35:23.270 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:35:33.277 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:35:33 + → module: 'TaskScheduler' +2025-10-23 21:35:33.277 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:35:43.286 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:35:43 + → module: 'TaskScheduler' +2025-10-23 21:35:43.286 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:35:53.297 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:35:53 + → module: 'TaskScheduler' +2025-10-23 21:35:53.297 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:36:03.325 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:36:03 + → module: 'TaskScheduler' +2025-10-23 21:36:03.325 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:36:13.332 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:36:13 + → module: 'TaskScheduler' +2025-10-23 21:36:13.332 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:36:23.341 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:36:23 + → module: 'TaskScheduler' +2025-10-23 21:36:23.341 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:36:33.368 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:36:33 + → module: 'TaskScheduler' +2025-10-23 21:36:33.368 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:36:43.377 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:36:43 + → module: 'TaskScheduler' +2025-10-23 21:36:43.377 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:36:53.384 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:36:53 + → module: 'TaskScheduler' +2025-10-23 21:36:53.384 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:37:03.411 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:37:03 + → module: 'TaskScheduler' +2025-10-23 21:37:03.411 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:37:13.419 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:37:13 + → module: 'TaskScheduler' +2025-10-23 21:37:13.419 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:37:23.426 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:37:23 + → module: 'TaskScheduler' +2025-10-23 21:37:23.426 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:37:33.454 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:37:33 + → module: 'TaskScheduler' +2025-10-23 21:37:33.454 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:37:43.473 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:37:43 + → module: 'TaskScheduler' +2025-10-23 21:37:43.473 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:37:53.481 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:37:53 + → module: 'TaskScheduler' +2025-10-23 21:37:53.481 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:38:03.488 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:38:03 + → module: 'TaskScheduler' +2025-10-23 21:38:03.488 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:38:13.515 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:38:13 + → module: 'TaskScheduler' +2025-10-23 21:38:13.515 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:38:23.523 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:38:23 + → module: 'TaskScheduler' +2025-10-23 21:38:23.523 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:38:33.541 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:38:33 + → module: 'TaskScheduler' +2025-10-23 21:38:33.541 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:38:43.567 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:38:43 + → module: 'TaskScheduler' +2025-10-23 21:38:43.567 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:38:53.575 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:38:53 + → module: 'TaskScheduler' +2025-10-23 21:38:53.575 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:39:03.584 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:39:03 + → module: 'TaskScheduler' +2025-10-23 21:39:03.584 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:39:13.592 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:39:13 + → module: 'TaskScheduler' +2025-10-23 21:39:13.592 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:39:23.599 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:39:23 + → module: 'TaskScheduler' +2025-10-23 21:39:23.599 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:39:33.628 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:39:33 + → module: 'TaskScheduler' +2025-10-23 21:39:33.628 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:39:43.656 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:39:43 + → module: 'TaskScheduler' +2025-10-23 21:39:43.656 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:39:53.665 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:39:53 + → module: 'TaskScheduler' +2025-10-23 21:39:53.665 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:40:03.672 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:40:03 + → module: 'TaskScheduler' +2025-10-23 21:40:03.672 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:40:03.697 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:40:03.706 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 21:40:03.706 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:40:03.707 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 21:40:03.707 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 21:40:03.707 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 21:40:03.722 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 21:40:03.726 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 21:40:03.726 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 21:40:03.727 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 13:34:12 + → module: 'NewsAPIClient' +2025-10-23 21:40:03.727 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 13:34:12 + → module: 'NewsAPIClient' +2025-10-23 21:40:03.727 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 21:40:04.111 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:40:04.157 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:40:04.170 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:40:04.445 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:40:04.447 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 21:40:04.447 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.72秒 + → module: 'NewsAPIClient' +2025-10-23 21:40:04.447 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 21:40:04.449 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 21:40:04.450 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 21:40:04.451 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 21:40:04.452 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 13:34:12 + → module: 'NewsAPIClient' +2025-10-23 21:40:04.452 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 13:34:12 + → module: 'NewsAPIClient' +2025-10-23 21:40:04.453 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.75秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 21:40:04.498 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 21:40:04.499 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:40:13.709 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:40:13 + → module: 'TaskScheduler' +2025-10-23 21:40:13.709 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:40:23.719 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:40:23 + → module: 'TaskScheduler' +2025-10-23 21:40:23.719 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:40:33.737 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:40:33 + → module: 'TaskScheduler' +2025-10-23 21:40:33.737 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:40:43.756 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:40:43 + → module: 'TaskScheduler' +2025-10-23 21:40:43.756 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:40:53.764 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:40:53 + → module: 'TaskScheduler' +2025-10-23 21:40:53.765 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:41:03.773 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:41:03 + → module: 'TaskScheduler' +2025-10-23 21:41:03.774 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:41:13.782 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:41:13 + → module: 'TaskScheduler' +2025-10-23 21:41:13.783 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:41:23.792 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:41:23 + → module: 'TaskScheduler' +2025-10-23 21:41:23.792 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:41:33.800 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:41:33 + → module: 'TaskScheduler' +2025-10-23 21:41:33.800 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:41:43.808 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:41:43 + → module: 'TaskScheduler' +2025-10-23 21:41:43.808 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:41:53.817 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:41:53 + → module: 'TaskScheduler' +2025-10-23 21:41:53.817 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:42:03.824 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:42:03 + → module: 'TaskScheduler' +2025-10-23 21:42:03.824 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:42:13.832 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:42:13 + → module: 'TaskScheduler' +2025-10-23 21:42:13.833 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:42:23.842 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:42:23 + → module: 'TaskScheduler' +2025-10-23 21:42:23.843 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:42:33.851 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:42:33 + → module: 'TaskScheduler' +2025-10-23 21:42:33.851 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:42:43.883 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:42:43 + → module: 'TaskScheduler' +2025-10-23 21:42:43.883 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:42:53.903 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:42:53 + → module: 'TaskScheduler' +2025-10-23 21:42:53.903 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:43:03.934 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:43:03 + → module: 'TaskScheduler' +2025-10-23 21:43:03.934 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:43:13.942 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:43:13 + → module: 'TaskScheduler' +2025-10-23 21:43:13.942 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:43:23.950 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:43:23 + → module: 'TaskScheduler' +2025-10-23 21:43:23.950 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:43:33.975 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:43:33 + → module: 'TaskScheduler' +2025-10-23 21:43:33.975 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:43:43.982 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:43:43 + → module: 'TaskScheduler' +2025-10-23 21:43:43.982 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:43:53.990 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:43:53 + → module: 'TaskScheduler' +2025-10-23 21:43:53.990 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:44:03.999 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:44:03 + → module: 'TaskScheduler' +2025-10-23 21:44:03.999 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:44:14.008 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:44:14 + → module: 'TaskScheduler' +2025-10-23 21:44:14.008 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:44:24.015 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:44:24 + → module: 'TaskScheduler' +2025-10-23 21:44:24.015 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:44:34.024 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:44:34 + → module: 'TaskScheduler' +2025-10-23 21:44:34.024 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:44:44.045 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:44:44 + → module: 'TaskScheduler' +2025-10-23 21:44:44.045 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:44:54.052 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:44:54 + → module: 'TaskScheduler' +2025-10-23 21:44:54.052 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:45:04.083 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:45:04 + → module: 'TaskScheduler' +2025-10-23 21:45:04.084 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:45:04.118 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:45:04.140 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 21:45:04.140 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:45:04.141 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 21:45:04.141 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 21:45:04.141 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 21:45:04.144 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 21:45:04.159 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 21:45:04.159 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 21:45:04.160 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 13:34:12 + → module: 'NewsAPIClient' +2025-10-23 21:45:04.160 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 13:34:12 + → module: 'NewsAPIClient' +2025-10-23 21:45:04.161 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 21:45:04.544 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:45:04.581 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:45:04.610 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:45:04.873 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:45:04.875 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 21:45:04.875 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.71秒 + → module: 'NewsAPIClient' +2025-10-23 21:45:04.875 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 21:45:04.876 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 21:45:04.876 | DEBUG | rss_subscriptions:235 - 处理条目 1: 日本外相最新涉华表态:致力于推动两国间战略互惠关系 + → module: 'NewsAPIClient' +2025-10-23 21:45:04.890 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 21:45:04.891 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 21:45:04.892 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 21:45:04.925 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 21:45:04.925 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 21:45:04.926 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 21:45:04.927 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 21:45:04.927 | DEBUG | rss_subscriptions:235 - 处理条目 1: “See·新力量”北京电影短片周颁奖 八部作品斩获十大奖项 + → module: 'NewsAPIClient' +2025-10-23 21:45:04.927 | DEBUG | rss_subscriptions:235 - 处理条目 2: 日本外相最新涉华表态:致力于推动两国间战略互惠关系 + → module: 'NewsAPIClient' +2025-10-23 21:45:04.928 | DEBUG | rss_subscriptions:235 - 处理条目 3: 葡语国家记者团寻访郑州:品网红茶饮 看智能制造 + → module: 'NewsAPIClient' +2025-10-23 21:45:04.928 | DEBUG | rss_subscriptions:235 - 处理条目 4: 西安持续深化减污降碳协同创新试点工作 探索可推广的“西安经验” + → module: 'NewsAPIClient' +2025-10-23 21:45:04.928 | DEBUG | rss_subscriptions:235 - 处理条目 5: 河南郑州:中外市长游船赏景夜话 + → module: 'NewsAPIClient' +2025-10-23 21:45:04.932 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 21:45:04.933 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 21:45:04.934 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 5 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 21:45:04.945 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 1 + → error_message: "Duplicate entry '日本外相最新涉华表态:致力于推动两国间战略ä' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '日本外相最新涉华表态:致力于推动两国间战略互惠关系...', '文章链接': 'http://www.chinanews.com/gj/2025/10-23/10503521.shtml...', '文章摘要': '中新网10月23日电 据日本外务省消息,当地时间22日,日本外相茂木敏充在就任记者会上表示,将致力于推动日中两国间的战略互惠关系。...', '发布时间': ... +2025-10-23 21:45:04.961 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 5 + → total_inserted: 4 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-23 21:45:04.962 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '日本外相最新涉华表态:致力于推动两国间战略ä' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '日本外相最新涉华表态:致力于推动两国间战略ä' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '日本外相最... +2025-10-23 21:45:04.963 | INFO | rss_subscriptions:259 - 成功写入 4/5 条记录 + → module: 'NewsAPIClient' +2025-10-23 21:45:04.964 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 13:38:40 + → module: 'NewsAPIClient' +2025-10-23 21:45:04.964 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 13:38:40 + → module: 'NewsAPIClient' +2025-10-23 21:45:04.964 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.82秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 21:45:04.973 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 21:45:04.974 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:45:14.143 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:45:14 + → module: 'TaskScheduler' +2025-10-23 21:45:14.143 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:45:24.177 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:45:24 + → module: 'TaskScheduler' +2025-10-23 21:45:24.177 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:45:34.183 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:45:34 + → module: 'TaskScheduler' +2025-10-23 21:45:34.183 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:45:44.192 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:45:44 + → module: 'TaskScheduler' +2025-10-23 21:45:44.192 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:45:54.200 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:45:54 + → module: 'TaskScheduler' +2025-10-23 21:45:54.200 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:46:04.230 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:46:04 + → module: 'TaskScheduler' +2025-10-23 21:46:04.230 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:46:14.238 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:46:14 + → module: 'TaskScheduler' +2025-10-23 21:46:14.238 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:46:24.261 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:46:24 + → module: 'TaskScheduler' +2025-10-23 21:46:24.261 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:46:34.289 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:46:34 + → module: 'TaskScheduler' +2025-10-23 21:46:34.289 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:46:44.313 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:46:44 + → module: 'TaskScheduler' +2025-10-23 21:46:44.313 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:46:54.321 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:46:54 + → module: 'TaskScheduler' +2025-10-23 21:46:54.321 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:47:04.348 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:47:04 + → module: 'TaskScheduler' +2025-10-23 21:47:04.348 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:47:14.356 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:47:14 + → module: 'TaskScheduler' +2025-10-23 21:47:14.356 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:47:24.376 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:47:24 + → module: 'TaskScheduler' +2025-10-23 21:47:24.376 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:47:34.386 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:47:34 + → module: 'TaskScheduler' +2025-10-23 21:47:34.386 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:47:44.396 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:47:44 + → module: 'TaskScheduler' +2025-10-23 21:47:44.396 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:47:54.406 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:47:54 + → module: 'TaskScheduler' +2025-10-23 21:47:54.406 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:48:04.414 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:48:04 + → module: 'TaskScheduler' +2025-10-23 21:48:04.414 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:48:14.422 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:48:14 + → module: 'TaskScheduler' +2025-10-23 21:48:14.422 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:48:24.430 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:48:24 + → module: 'TaskScheduler' +2025-10-23 21:48:24.430 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:48:34.438 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:48:34 + → module: 'TaskScheduler' +2025-10-23 21:48:34.438 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:48:44.447 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:48:44 + → module: 'TaskScheduler' +2025-10-23 21:48:44.447 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:48:54.455 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:48:54 + → module: 'TaskScheduler' +2025-10-23 21:48:54.455 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:49:04.463 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:49:04 + → module: 'TaskScheduler' +2025-10-23 21:49:04.463 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:49:14.485 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:49:14 + → module: 'TaskScheduler' +2025-10-23 21:49:14.485 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:49:24.493 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:49:24 + → module: 'TaskScheduler' +2025-10-23 21:49:24.493 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:49:34.522 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:49:34 + → module: 'TaskScheduler' +2025-10-23 21:49:34.522 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:49:44.529 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:49:44 + → module: 'TaskScheduler' +2025-10-23 21:49:44.529 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:49:54.536 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:49:54 + → module: 'TaskScheduler' +2025-10-23 21:49:54.536 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:50:04.567 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:50:04 + → module: 'TaskScheduler' +2025-10-23 21:50:04.567 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:50:04.592 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:50:04.599 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 21:50:04.600 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:50:04.601 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 21:50:04.601 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 21:50:04.602 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 21:50:04.605 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 21:50:04.619 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 21:50:04.619 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 21:50:04.620 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 13:38:40 + → module: 'NewsAPIClient' +2025-10-23 21:50:04.620 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 13:38:40 + → module: 'NewsAPIClient' +2025-10-23 21:50:04.621 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 21:50:05.057 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:50:05.071 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:50:05.083 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:50:05.409 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:50:05.411 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 21:50:05.411 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.79秒 + → module: 'NewsAPIClient' +2025-10-23 21:50:05.411 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 21:50:05.413 | DEBUG | rss_subscriptions:235 - 处理条目 1: 天津北辰:前瞻布局新兴产业 建成京津冀首个低空立体交通系统 + → module: 'NewsAPIClient' +2025-10-23 21:50:05.413 | DEBUG | rss_subscriptions:235 - 处理条目 2: 欧盟第19轮对俄制裁列单中国企业 商务部回应 + → module: 'NewsAPIClient' +2025-10-23 21:50:05.413 | DEBUG | rss_subscriptions:235 - 处理条目 3: 《2025中国数字文创城市指数》发布 京沪深蓉杭居前五 + → module: 'NewsAPIClient' +2025-10-23 21:50:05.413 | DEBUG | rss_subscriptions:235 - 处理条目 4: “边民互市+落地加工”业务落地新疆阿拉山口口岸 + → module: 'NewsAPIClient' +2025-10-23 21:50:05.415 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 21:50:05.418 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 21:50:05.419 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 4 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 21:50:05.456 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 4 + → total_inserted: 4 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 21:50:05.456 | INFO | rss_subscriptions:259 - 成功写入 4/4 条记录 + → module: 'NewsAPIClient' +2025-10-23 21:50:05.456 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 21:50:05.459 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 21:50:05.461 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 21:50:05.462 | DEBUG | rss_subscriptions:235 - 处理条目 1: 霜降时节逢油茶果采摘季 广西田林农户采果忙 + → module: 'NewsAPIClient' +2025-10-23 21:50:05.462 | DEBUG | rss_subscriptions:235 - 处理条目 2: (活力中国调研行)解码江苏泰州水乡共富路:从“最佳旅游乡村”看农文旅融合新探索 + → module: 'NewsAPIClient' +2025-10-23 21:50:05.462 | DEBUG | rss_subscriptions:235 - 处理条目 3: 广东嘉许致敬178个志愿服务先进典型 + → module: 'NewsAPIClient' +2025-10-23 21:50:05.463 | DEBUG | rss_subscriptions:235 - 处理条目 4: 葛墨林院士谈杨振宁先生的“遗产” + → module: 'NewsAPIClient' +2025-10-23 21:50:05.463 | DEBUG | rss_subscriptions:235 - 处理条目 5: 《2025中国数字文创城市指数》发布 京沪深蓉杭居前五 + → module: 'NewsAPIClient' +2025-10-23 21:50:05.463 | DEBUG | rss_subscriptions:235 - 处理条目 6: “边民互市+落地加工”业务落地新疆阿拉山口口岸 + → module: 'NewsAPIClient' +2025-10-23 21:50:05.463 | DEBUG | rss_subscriptions:235 - 处理条目 7: 全民健身蓬勃发展 “她力量”绽放 + → module: 'NewsAPIClient' +2025-10-23 21:50:05.463 | DEBUG | rss_subscriptions:235 - 处理条目 8: 2025百城旅游营销活动在重庆举办 搭建城市文旅合作桥梁 + → module: 'NewsAPIClient' +2025-10-23 21:50:05.468 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 21:50:05.470 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 21:50:05.472 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 8 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 21:50:05.497 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 4 + → error_message: "Duplicate entry '《2025中国数字文创城市指数》发布 京沪深蓉杭å±' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '《2025中国数字文创城市指数》发布 京沪深蓉杭居前五...', '文章链接': 'http://www.chinanews.com/cj/2025/10-23/10503513.shtml...', '文章摘要': '中新网成都10月23日电 (王利文)在23日举行的2025成都国际数字文创生态伙伴大会上,上合组织协同创新工委会与中国文化产业协会联合发布《2025中国数... +2025-10-23 21:50:05.500 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 5 + → error_message: "Duplicate entry '“边民互市+落地加工”业务落地新疆阿拉山口å' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '“边民互市+落地加工”业务落地新疆阿拉山口口岸...', '文章链接': 'http://www.chinanews.com/cj/2025/10-23/10503453.shtml...', '文章摘要': '中新网乌鲁木齐10月23日电 (胡嘉琛 迪丽尼尕尔·迪力夏提)记者23日从新疆阿拉山口口岸获悉,该口岸日前完成首票“边民互市+落地加工”业务,贸易模式“再升级”。... +2025-10-23 21:50:05.509 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 8 + → total_inserted: 6 + → total_duplicates: 2 + → total_failed: 0 + → failed_records_count: 2 +2025-10-23 21:50:05.510 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 4, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '《2025中国数字文创城市指数》发布 京沪深蓉杭å±' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 5, 'type':... + → detailed_failed_records: [{'index': 4, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '《2025中国数字文创城市指数》发布 京沪深蓉杭å±' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '《... +2025-10-23 21:50:05.512 | INFO | rss_subscriptions:259 - 成功写入 6/8 条记录 + → module: 'NewsAPIClient' +2025-10-23 21:50:05.512 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 13:46:11 + → module: 'NewsAPIClient' +2025-10-23 21:50:05.513 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 13:46:11 + → module: 'NewsAPIClient' +2025-10-23 21:50:05.513 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.91秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 21:50:05.520 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 21:50:05.521 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:50:14.602 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:50:14 + → module: 'TaskScheduler' +2025-10-23 21:50:14.603 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:50:24.636 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:50:24 + → module: 'TaskScheduler' +2025-10-23 21:50:24.636 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:50:34.643 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:50:34 + → module: 'TaskScheduler' +2025-10-23 21:50:34.643 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:50:44.651 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:50:44 + → module: 'TaskScheduler' +2025-10-23 21:50:44.651 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:50:54.676 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:50:54 + → module: 'TaskScheduler' +2025-10-23 21:50:54.676 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:51:04.696 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:51:04 + → module: 'TaskScheduler' +2025-10-23 21:51:04.696 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:51:14.704 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:51:14 + → module: 'TaskScheduler' +2025-10-23 21:51:14.704 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:51:24.712 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:51:24 + → module: 'TaskScheduler' +2025-10-23 21:51:24.712 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:51:34.721 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:51:34 + → module: 'TaskScheduler' +2025-10-23 21:51:34.721 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:51:44.728 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:51:44 + → module: 'TaskScheduler' +2025-10-23 21:51:44.728 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:51:54.756 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:51:54 + → module: 'TaskScheduler' +2025-10-23 21:51:54.756 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:52:04.763 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:52:04 + → module: 'TaskScheduler' +2025-10-23 21:52:04.763 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:52:14.771 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:52:14 + → module: 'TaskScheduler' +2025-10-23 21:52:14.771 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:52:24.799 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:52:24 + → module: 'TaskScheduler' +2025-10-23 21:52:24.799 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:52:34.807 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:52:34 + → module: 'TaskScheduler' +2025-10-23 21:52:34.807 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:52:44.828 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:52:44 + → module: 'TaskScheduler' +2025-10-23 21:52:44.828 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:52:54.837 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:52:54 + → module: 'TaskScheduler' +2025-10-23 21:52:54.837 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:53:04.845 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:53:04 + → module: 'TaskScheduler' +2025-10-23 21:53:04.845 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:53:14.855 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:53:14 + → module: 'TaskScheduler' +2025-10-23 21:53:14.855 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:53:24.878 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:53:24 + → module: 'TaskScheduler' +2025-10-23 21:53:24.878 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:53:34.901 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:53:34 + → module: 'TaskScheduler' +2025-10-23 21:53:34.902 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:53:44.911 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:53:44 + → module: 'TaskScheduler' +2025-10-23 21:53:44.911 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:53:54.943 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:53:54 + → module: 'TaskScheduler' +2025-10-23 21:53:54.943 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:54:04.972 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:54:04 + → module: 'TaskScheduler' +2025-10-23 21:54:04.972 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:54:14.980 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:54:14 + → module: 'TaskScheduler' +2025-10-23 21:54:14.980 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:54:24.998 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:54:24 + → module: 'TaskScheduler' +2025-10-23 21:54:24.998 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:54:35.007 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:54:35 + → module: 'TaskScheduler' +2025-10-23 21:54:35.007 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:54:45.017 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:54:45 + → module: 'TaskScheduler' +2025-10-23 21:54:45.017 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:54:55.038 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:54:55 + → module: 'TaskScheduler' +2025-10-23 21:54:55.038 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:55:05.046 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:55:05 + → module: 'TaskScheduler' +2025-10-23 21:55:05.046 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:55:05.079 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:55:05.101 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 21:55:05.102 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:55:05.102 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 21:55:05.102 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 21:55:05.103 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 21:55:05.108 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 21:55:05.133 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 21:55:05.133 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 21:55:05.134 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 13:46:11 + → module: 'NewsAPIClient' +2025-10-23 21:55:05.134 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 13:46:11 + → module: 'NewsAPIClient' +2025-10-23 21:55:05.134 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 21:55:05.508 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:55:05.540 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:55:05.599 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:55:05.854 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 21:55:05.856 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 21:55:05.856 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.72秒 + → module: 'NewsAPIClient' +2025-10-23 21:55:05.856 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 21:55:05.857 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 21:55:05.858 | DEBUG | rss_subscriptions:235 - 处理条目 1: 中国矿业联合会:打造矿业权“国际集市” + → module: 'NewsAPIClient' +2025-10-23 21:55:05.858 | DEBUG | rss_subscriptions:235 - 处理条目 2: 2025中国国际矿业大会开幕 共促全球矿业繁荣 + → module: 'NewsAPIClient' +2025-10-23 21:55:05.859 | DEBUG | rss_subscriptions:235 - 处理条目 3: 中国矿产资源报告:铜、铁、磷等矿产资源量大幅增长 + → module: 'NewsAPIClient' +2025-10-23 21:55:05.862 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 21:55:05.864 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 21:55:05.865 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 3 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 21:55:05.894 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 3 + → total_inserted: 3 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 21:55:05.894 | INFO | rss_subscriptions:259 - 成功写入 3/3 条记录 + → module: 'NewsAPIClient' +2025-10-23 21:55:05.894 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 21:55:05.895 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 21:55:05.895 | DEBUG | rss_subscriptions:235 - 处理条目 1: 中日韩养老科技案例库启动 将面向企业、科研机构等开放 + → module: 'NewsAPIClient' +2025-10-23 21:55:05.897 | DEBUG | rss_subscriptions:235 - 处理条目 2: 2025年青海省“国际雪豹日”活动举行 + → module: 'NewsAPIClient' +2025-10-23 21:55:05.897 | DEBUG | rss_subscriptions:235 - 处理条目 3: 香港举办运动科学展 展示十五运会香港赛区项目 + → module: 'NewsAPIClient' +2025-10-23 21:55:05.897 | DEBUG | rss_subscriptions:235 - 处理条目 4: 中国矿产资源报告:铜、铁、磷等矿产资源量大幅增长 + → module: 'NewsAPIClient' +2025-10-23 21:55:05.897 | DEBUG | rss_subscriptions:235 - 处理条目 5: 港中大师生吊唁杨振宁:“典范长存,思想永馨” + → module: 'NewsAPIClient' +2025-10-23 21:55:05.897 | DEBUG | rss_subscriptions:235 - 处理条目 6: 中法教育与影视界专家长春对话 探索AI融入艺术教学 + → module: 'NewsAPIClient' +2025-10-23 21:55:05.897 | DEBUG | rss_subscriptions:235 - 处理条目 7: 2025中国国际矿业大会在天津举行 + → module: 'NewsAPIClient' +2025-10-23 21:55:05.897 | DEBUG | rss_subscriptions:235 - 处理条目 8: 专家建言海南打造中国知识产权事业发展首善之区 + → module: 'NewsAPIClient' +2025-10-23 21:55:05.901 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 21:55:05.902 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 21:55:05.903 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 8 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 21:55:05.926 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 3 + → error_message: "Duplicate entry '中国矿产资源报告:铜、铁、磷等矿产资源量大å' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '中国矿产资源报告:铜、铁、磷等矿产资源量大幅增长...', '文章链接': 'http://www.chinanews.com/cj/2025/10-23/10503530.shtml...', '文章摘要': '中新社天津10月23日电 (记者 王君妍 周亚强)23日发布的《中国矿产资源报告(2025)》显示,中国新一轮找矿突破战略行动取得重要进展,矿产资源家底进一步... +2025-10-23 21:55:05.949 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 8 + → total_inserted: 7 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-23 21:55:05.949 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 3, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '中国矿产资源报告:铜、铁、磷等矿产资源量大å' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 3, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '中国矿产资源报告:铜、铁、磷等矿产资源量大å' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '中国矿产资... +2025-10-23 21:55:05.950 | INFO | rss_subscriptions:259 - 成功写入 7/8 条记录 + → module: 'NewsAPIClient' +2025-10-23 21:55:05.951 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 13:52:43 + → module: 'NewsAPIClient' +2025-10-23 21:55:05.951 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 13:52:43 + → module: 'NewsAPIClient' +2025-10-23 21:55:05.951 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.85秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 21:55:05.960 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 21:55:05.960 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 21:55:15.104 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:55:15 + → module: 'TaskScheduler' +2025-10-23 21:55:15.104 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:55:25.124 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:55:25 + → module: 'TaskScheduler' +2025-10-23 21:55:25.124 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:55:35.133 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:55:35 + → module: 'TaskScheduler' +2025-10-23 21:55:35.133 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:55:45.142 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:55:45 + → module: 'TaskScheduler' +2025-10-23 21:55:45.142 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:55:55.151 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:55:55 + → module: 'TaskScheduler' +2025-10-23 21:55:55.151 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:56:05.162 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:56:05 + → module: 'TaskScheduler' +2025-10-23 21:56:05.162 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:56:15.171 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:56:15 + → module: 'TaskScheduler' +2025-10-23 21:56:15.171 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:56:25.205 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:56:25 + → module: 'TaskScheduler' +2025-10-23 21:56:25.205 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:56:35.238 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:56:35 + → module: 'TaskScheduler' +2025-10-23 21:56:35.238 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:56:45.269 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:56:45 + → module: 'TaskScheduler' +2025-10-23 21:56:45.269 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:56:55.278 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:56:55 + → module: 'TaskScheduler' +2025-10-23 21:56:55.278 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:57:05.308 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:57:05 + → module: 'TaskScheduler' +2025-10-23 21:57:05.308 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:57:15.334 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:57:15 + → module: 'TaskScheduler' +2025-10-23 21:57:15.334 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:57:25.353 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:57:25 + → module: 'TaskScheduler' +2025-10-23 21:57:25.353 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:57:35.361 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:57:35 + → module: 'TaskScheduler' +2025-10-23 21:57:35.361 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:57:45.371 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:57:45 + → module: 'TaskScheduler' +2025-10-23 21:57:45.371 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:57:55.382 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:57:55 + → module: 'TaskScheduler' +2025-10-23 21:57:55.382 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:58:05.389 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:58:05 + → module: 'TaskScheduler' +2025-10-23 21:58:05.389 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:58:15.419 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:58:15 + → module: 'TaskScheduler' +2025-10-23 21:58:15.419 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:58:25.442 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:58:25 + → module: 'TaskScheduler' +2025-10-23 21:58:25.442 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:58:35.464 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:58:35 + → module: 'TaskScheduler' +2025-10-23 21:58:35.465 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:58:45.473 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:58:45 + → module: 'TaskScheduler' +2025-10-23 21:58:45.473 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:58:55.501 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:58:55 + → module: 'TaskScheduler' +2025-10-23 21:58:55.501 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:59:05.510 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:59:05 + → module: 'TaskScheduler' +2025-10-23 21:59:05.510 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:59:15.517 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:59:15 + → module: 'TaskScheduler' +2025-10-23 21:59:15.517 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:59:25.524 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:59:25 + → module: 'TaskScheduler' +2025-10-23 21:59:25.524 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:59:35.532 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:59:35 + → module: 'TaskScheduler' +2025-10-23 21:59:35.532 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:59:45.560 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:59:45 + → module: 'TaskScheduler' +2025-10-23 21:59:45.560 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 21:59:55.569 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 21:59:55 + → module: 'TaskScheduler' +2025-10-23 21:59:55.569 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:00:05.577 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:00:05 + → module: 'TaskScheduler' +2025-10-23 22:00:05.578 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:00:05.586 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:00:05.607 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 22:00:05.608 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:00:05.608 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 22:00:05.608 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 22:00:05.608 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 22:00:05.612 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 22:00:05.615 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 22:00:05.615 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 22:00:05.616 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 13:52:43 + → module: 'NewsAPIClient' +2025-10-23 22:00:05.616 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 13:52:43 + → module: 'NewsAPIClient' +2025-10-23 22:00:05.616 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 22:00:05.997 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:00:06.047 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:00:06.079 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:00:06.327 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:00:06.329 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 22:00:06.330 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.71秒 + → module: 'NewsAPIClient' +2025-10-23 22:00:06.330 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 22:00:06.331 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 22:00:06.332 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 22:00:06.332 | DEBUG | rss_subscriptions:235 - 处理条目 1: 水电总院李昇:望将“水电+新能源”综合开发模式应用于能源国际合作 + → module: 'NewsAPIClient' +2025-10-23 22:00:06.333 | DEBUG | rss_subscriptions:235 - 处理条目 2: 报告:深圳无人车生鲜快递月送单量破百万 + → module: 'NewsAPIClient' +2025-10-23 22:00:06.333 | DEBUG | rss_subscriptions:235 - 处理条目 3: 全球数字文创精英成都共话产业创新未来 + → module: 'NewsAPIClient' +2025-10-23 22:00:06.333 | DEBUG | rss_subscriptions:235 - 处理条目 4: 新石器无人车获6亿美元融资 无人配送车需求有望迎爆发 + → module: 'NewsAPIClient' +2025-10-23 22:00:06.357 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 22:00:06.359 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 22:00:06.360 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 4 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 22:00:06.385 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 4 + → total_inserted: 4 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 22:00:06.386 | INFO | rss_subscriptions:259 - 成功写入 4/4 条记录 + → module: 'NewsAPIClient' +2025-10-23 22:00:06.386 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 22:00:06.387 | DEBUG | rss_subscriptions:235 - 处理条目 1: 中国雪豹保护成效显著:种群翻倍 栖息地超200万平方公里 + → module: 'NewsAPIClient' +2025-10-23 22:00:06.387 | DEBUG | rss_subscriptions:235 - 处理条目 2: 四川脱贫人口务工规模达250.5万人 + → module: 'NewsAPIClient' +2025-10-23 22:00:06.388 | DEBUG | rss_subscriptions:235 - 处理条目 3: 贵州赫章就业帮扶车间:搬迁群众“家门口”赶制外贸订单 + → module: 'NewsAPIClient' +2025-10-23 22:00:06.388 | DEBUG | rss_subscriptions:235 - 处理条目 4: 新石器无人车获6亿美元融资 无人配送车需求有望迎爆发 + → module: 'NewsAPIClient' +2025-10-23 22:00:06.388 | DEBUG | rss_subscriptions:235 - 处理条目 5: 沪高校学子建涉台传统聚落数据库助台胞返乡寻根 + → module: 'NewsAPIClient' +2025-10-23 22:00:06.388 | DEBUG | rss_subscriptions:235 - 处理条目 6: 湖北丹江口:橘熟果飘香 采摘销售忙 + → module: 'NewsAPIClient' +2025-10-23 22:00:06.388 | DEBUG | rss_subscriptions:235 - 处理条目 7: 世界网球巡回赛青少年年终总决赛 张瑞恩遭遇两连败 + → module: 'NewsAPIClient' +2025-10-23 22:00:06.388 | DEBUG | rss_subscriptions:235 - 处理条目 8: 黑龙江省“社保规划师”团队“站台” 为咨询者“精算”社保待遇 + → module: 'NewsAPIClient' +2025-10-23 22:00:06.388 | DEBUG | rss_subscriptions:235 - 处理条目 9: 第四届广东省退役军人创业创新大赛收官 + → module: 'NewsAPIClient' +2025-10-23 22:00:06.392 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 22:00:06.393 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 22:00:06.394 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 9 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 22:00:06.415 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 3 + → error_message: "Duplicate entry '新石器无人车获6亿美元融资 无人配送车需求有æ\x9c' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '新石器无人车获6亿美元融资 无人配送车需求有望迎爆发...', '文章链接': 'http://www.chinanews.com/cj/2025/10-23/10503533.shtml...', '文章摘要': '中新网北京10月23日电 (记者 刘育英)10月23日,L4级无人城配(RoboVan)解决方案提供商新石器公司宣布完成逾6亿美元D轮融资,创下中国自动驾驶... +2025-10-23 22:00:06.445 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 9 + → total_inserted: 8 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-23 22:00:06.446 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 3, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '新石器无人车获6亿美元融资 无人配送车需求有æ\x9c' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 3, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '新石器无人车获6亿美元融资 无人配送车需求有æ\x9c' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '... +2025-10-23 22:00:06.447 | INFO | rss_subscriptions:259 - 成功写入 8/9 条记录 + → module: 'NewsAPIClient' +2025-10-23 22:00:06.449 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 13:58:51 + → module: 'NewsAPIClient' +2025-10-23 22:00:06.449 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 13:58:51 + → module: 'NewsAPIClient' +2025-10-23 22:00:06.449 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.84秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 22:00:06.457 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 22:00:06.458 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:00:15.610 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:00:15 + → module: 'TaskScheduler' +2025-10-23 22:00:15.610 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:00:25.618 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:00:25 + → module: 'TaskScheduler' +2025-10-23 22:00:25.619 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:00:35.626 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:00:35 + → module: 'TaskScheduler' +2025-10-23 22:00:35.626 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:00:45.656 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:00:45 + → module: 'TaskScheduler' +2025-10-23 22:00:45.656 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:00:55.680 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:00:55 + → module: 'TaskScheduler' +2025-10-23 22:00:55.681 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:01:05.702 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:01:05 + → module: 'TaskScheduler' +2025-10-23 22:01:05.702 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:01:15.720 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:01:15 + → module: 'TaskScheduler' +2025-10-23 22:01:15.720 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:01:25.728 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:01:25 + → module: 'TaskScheduler' +2025-10-23 22:01:25.729 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:01:35.735 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:01:35 + → module: 'TaskScheduler' +2025-10-23 22:01:35.735 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:01:45.746 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:01:45 + → module: 'TaskScheduler' +2025-10-23 22:01:45.746 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:01:55.755 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:01:55 + → module: 'TaskScheduler' +2025-10-23 22:01:55.755 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:02:05.772 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:02:05 + → module: 'TaskScheduler' +2025-10-23 22:02:05.772 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:02:15.798 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:02:15 + → module: 'TaskScheduler' +2025-10-23 22:02:15.798 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:02:25.807 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:02:25 + → module: 'TaskScheduler' +2025-10-23 22:02:25.807 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:02:35.833 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:02:35 + → module: 'TaskScheduler' +2025-10-23 22:02:35.833 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:02:45.842 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:02:45 + → module: 'TaskScheduler' +2025-10-23 22:02:45.842 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:02:55.850 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:02:55 + → module: 'TaskScheduler' +2025-10-23 22:02:55.850 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:03:05.858 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:03:05 + → module: 'TaskScheduler' +2025-10-23 22:03:05.858 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:03:15.876 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:03:15 + → module: 'TaskScheduler' +2025-10-23 22:03:15.876 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:03:25.886 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:03:25 + → module: 'TaskScheduler' +2025-10-23 22:03:25.886 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:03:35.893 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:03:35 + → module: 'TaskScheduler' +2025-10-23 22:03:35.893 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:03:45.923 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:03:45 + → module: 'TaskScheduler' +2025-10-23 22:03:45.923 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:03:55.949 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:03:55 + → module: 'TaskScheduler' +2025-10-23 22:03:55.949 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:04:05.979 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:04:05 + → module: 'TaskScheduler' +2025-10-23 22:04:05.980 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:04:15.988 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:04:15 + → module: 'TaskScheduler' +2025-10-23 22:04:15.988 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:04:25.995 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:04:25 + → module: 'TaskScheduler' +2025-10-23 22:04:25.995 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:04:36.004 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:04:36 + → module: 'TaskScheduler' +2025-10-23 22:04:36.004 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:04:46.012 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:04:46 + → module: 'TaskScheduler' +2025-10-23 22:04:46.012 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:04:56.020 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:04:56 + → module: 'TaskScheduler' +2025-10-23 22:04:56.020 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:05:06.048 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:05:06 + → module: 'TaskScheduler' +2025-10-23 22:05:06.048 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:05:06.057 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:05:06.102 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 22:05:06.102 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:05:06.103 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 22:05:06.103 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 22:05:06.103 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 22:05:06.130 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 22:05:06.147 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 22:05:06.147 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 22:05:06.147 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 13:58:51 + → module: 'NewsAPIClient' +2025-10-23 22:05:06.148 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 13:58:51 + → module: 'NewsAPIClient' +2025-10-23 22:05:06.148 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 22:05:06.541 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:05:06.567 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:05:06.580 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:05:06.889 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:05:06.890 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 22:05:06.891 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.74秒 + → module: 'NewsAPIClient' +2025-10-23 22:05:06.891 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 22:05:06.892 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 22:05:06.893 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 22:05:06.896 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 22:05:06.896 | DEBUG | rss_subscriptions:235 - 处理条目 1: 全国劳动模范和大国工匠代表团到访澳门 + → module: 'NewsAPIClient' +2025-10-23 22:05:06.896 | DEBUG | rss_subscriptions:235 - 处理条目 2: 滇台代表共话台湾光复80周年:历史不容忘,两岸须同心 + → module: 'NewsAPIClient' +2025-10-23 22:05:06.915 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 22:05:06.916 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 22:05:06.918 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 2 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 22:05:06.928 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 2 + → total_inserted: 2 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 22:05:06.928 | INFO | rss_subscriptions:259 - 成功写入 2/2 条记录 + → module: 'NewsAPIClient' +2025-10-23 22:05:06.930 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 14:01:36 + → module: 'NewsAPIClient' +2025-10-23 22:05:06.930 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 14:01:36 + → module: 'NewsAPIClient' +2025-10-23 22:05:06.931 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.83秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 22:05:06.939 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 22:05:06.939 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:05:16.104 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:05:16 + → module: 'TaskScheduler' +2025-10-23 22:05:16.104 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:05:26.112 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:05:26 + → module: 'TaskScheduler' +2025-10-23 22:05:26.112 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:05:36.121 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:05:36 + → module: 'TaskScheduler' +2025-10-23 22:05:36.121 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:05:46.129 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:05:46 + → module: 'TaskScheduler' +2025-10-23 22:05:46.129 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:05:56.137 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:05:56 + → module: 'TaskScheduler' +2025-10-23 22:05:56.137 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:06:06.146 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:06:06 + → module: 'TaskScheduler' +2025-10-23 22:06:06.146 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:06:16.154 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:06:16 + → module: 'TaskScheduler' +2025-10-23 22:06:16.154 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:06:26.174 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:06:26 + → module: 'TaskScheduler' +2025-10-23 22:06:26.174 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:06:36.198 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:06:36 + → module: 'TaskScheduler' +2025-10-23 22:06:36.198 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:06:46.226 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:06:46 + → module: 'TaskScheduler' +2025-10-23 22:06:46.226 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:06:56.237 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:06:56 + → module: 'TaskScheduler' +2025-10-23 22:06:56.237 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:07:06.244 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:07:06 + → module: 'TaskScheduler' +2025-10-23 22:07:06.244 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:07:16.267 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:07:16 + → module: 'TaskScheduler' +2025-10-23 22:07:16.267 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:07:26.275 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:07:26 + → module: 'TaskScheduler' +2025-10-23 22:07:26.275 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:07:36.296 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:07:36 + → module: 'TaskScheduler' +2025-10-23 22:07:36.296 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:07:46.304 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:07:46 + → module: 'TaskScheduler' +2025-10-23 22:07:46.304 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:07:56.329 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:07:56 + → module: 'TaskScheduler' +2025-10-23 22:07:56.329 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:08:06.349 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:08:06 + → module: 'TaskScheduler' +2025-10-23 22:08:06.349 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:08:06.376 | INFO | main:87 - 小时任务统计 + → module: 'Main' + → 总任务数: 12 + → 成功: 12 + → 失败: 0 +2025-10-23 22:08:16.377 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:08:16 + → module: 'TaskScheduler' +2025-10-23 22:08:16.377 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:08:26.401 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:08:26 + → module: 'TaskScheduler' +2025-10-23 22:08:26.401 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:08:36.430 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:08:36 + → module: 'TaskScheduler' +2025-10-23 22:08:36.430 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:08:46.449 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:08:46 + → module: 'TaskScheduler' +2025-10-23 22:08:46.449 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:08:56.467 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:08:56 + → module: 'TaskScheduler' +2025-10-23 22:08:56.467 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:09:06.475 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:09:06 + → module: 'TaskScheduler' +2025-10-23 22:09:06.475 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:09:16.507 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:09:16 + → module: 'TaskScheduler' +2025-10-23 22:09:16.507 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:09:26.514 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:09:26 + → module: 'TaskScheduler' +2025-10-23 22:09:26.514 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:09:36.520 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:09:36 + → module: 'TaskScheduler' +2025-10-23 22:09:36.520 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:09:46.541 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:09:46 + → module: 'TaskScheduler' +2025-10-23 22:09:46.541 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:09:56.549 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:09:56 + → module: 'TaskScheduler' +2025-10-23 22:09:56.549 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:10:06.577 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:10:06 + → module: 'TaskScheduler' +2025-10-23 22:10:06.577 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:10:06.609 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:10:06.631 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 22:10:06.632 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:10:06.632 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 22:10:06.632 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 22:10:06.633 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 22:10:06.650 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 22:10:06.655 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 22:10:06.655 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 22:10:06.656 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 14:01:36 + → module: 'NewsAPIClient' +2025-10-23 22:10:06.656 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 14:01:36 + → module: 'NewsAPIClient' +2025-10-23 22:10:06.656 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 22:10:07.080 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:10:07.113 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:10:07.139 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:10:07.393 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:10:07.396 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 22:10:07.396 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.74秒 + → module: 'NewsAPIClient' +2025-10-23 22:10:07.396 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 22:10:07.397 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 22:10:07.398 | DEBUG | rss_subscriptions:235 - 处理条目 1: 夯实基础全面发力 四中全会为中国未来五年明调定向 + → module: 'NewsAPIClient' +2025-10-23 22:10:07.423 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 22:10:07.425 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 22:10:07.426 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 22:10:07.447 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 22:10:07.447 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 22:10:07.449 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 22:10:07.449 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 22:10:07.450 | DEBUG | rss_subscriptions:235 - 处理条目 1: 夯实基础全面发力 四中全会为中国未来五年明调定向 + → module: 'NewsAPIClient' +2025-10-23 22:10:07.469 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 22:10:07.471 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 22:10:07.472 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 22:10:07.477 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 0 + → error_message: "Duplicate entry '夯实基础全面发力 四中全会为中国未来五年明调' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '夯实基础全面发力 四中全会为中国未来五年明调定向...', '文章链接': 'http://www.chinanews.com/gn/2025/10-23/10503538.shtml...', '文章摘要': '中新社北京10月23日电 (记者 李晓喻 李京泽 马帅莎)中共二十届四中全会23日发布公报。在这份5000多字的文本中,全会围绕未来五年如何为基本实现社会主义现... +2025-10-23 22:10:07.479 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 0 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-23 22:10:07.479 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '夯实基础全面发力 四中全会为中国未来五年明调' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '夯实基础全面发力 四中全会为中国未来五年明调' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '夯实基础全... +2025-10-23 22:10:07.480 | INFO | rss_subscriptions:259 - 成功写入 0/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 22:10:07.481 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 14:03:22 + → module: 'NewsAPIClient' +2025-10-23 22:10:07.481 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 14:03:22 + → module: 'NewsAPIClient' +2025-10-23 22:10:07.482 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.85秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 22:10:07.506 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 22:10:07.506 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:10:16.634 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:10:16 + → module: 'TaskScheduler' +2025-10-23 22:10:16.634 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:10:26.642 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:10:26 + → module: 'TaskScheduler' +2025-10-23 22:10:26.642 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:10:36.651 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:10:36 + → module: 'TaskScheduler' +2025-10-23 22:10:36.651 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:10:46.684 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:10:46 + → module: 'TaskScheduler' +2025-10-23 22:10:46.684 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:10:56.715 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:10:56 + → module: 'TaskScheduler' +2025-10-23 22:10:56.715 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:11:06.722 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:11:06 + → module: 'TaskScheduler' +2025-10-23 22:11:06.722 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:11:16.731 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:11:16 + → module: 'TaskScheduler' +2025-10-23 22:11:16.731 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:11:26.739 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:11:26 + → module: 'TaskScheduler' +2025-10-23 22:11:26.739 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:11:36.746 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:11:36 + → module: 'TaskScheduler' +2025-10-23 22:11:36.746 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:11:46.776 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:11:46 + → module: 'TaskScheduler' +2025-10-23 22:11:46.776 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:11:56.806 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:11:56 + → module: 'TaskScheduler' +2025-10-23 22:11:56.806 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:12:06.814 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:12:06 + → module: 'TaskScheduler' +2025-10-23 22:12:06.815 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:12:16.822 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:12:16 + → module: 'TaskScheduler' +2025-10-23 22:12:16.823 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:12:26.831 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:12:26 + → module: 'TaskScheduler' +2025-10-23 22:12:26.831 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:12:36.850 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:12:36 + → module: 'TaskScheduler' +2025-10-23 22:12:36.850 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:12:46.858 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:12:46 + → module: 'TaskScheduler' +2025-10-23 22:12:46.858 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:12:56.866 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:12:56 + → module: 'TaskScheduler' +2025-10-23 22:12:56.866 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:13:06.874 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:13:06 + → module: 'TaskScheduler' +2025-10-23 22:13:06.874 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:13:16.906 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:13:16 + → module: 'TaskScheduler' +2025-10-23 22:13:16.906 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:13:26.915 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:13:26 + → module: 'TaskScheduler' +2025-10-23 22:13:26.915 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:13:36.922 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:13:36 + → module: 'TaskScheduler' +2025-10-23 22:13:36.922 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:13:46.943 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:13:46 + → module: 'TaskScheduler' +2025-10-23 22:13:46.943 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:13:56.950 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:13:56 + → module: 'TaskScheduler' +2025-10-23 22:13:56.950 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:14:06.958 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:14:06 + → module: 'TaskScheduler' +2025-10-23 22:14:06.959 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:14:16.967 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:14:16 + → module: 'TaskScheduler' +2025-10-23 22:14:16.968 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:14:26.976 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:14:26 + → module: 'TaskScheduler' +2025-10-23 22:14:26.976 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:14:37.005 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:14:37 + → module: 'TaskScheduler' +2025-10-23 22:14:37.005 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:14:47.034 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:14:47 + → module: 'TaskScheduler' +2025-10-23 22:14:47.034 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:14:57.065 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:14:57 + → module: 'TaskScheduler' +2025-10-23 22:14:57.065 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:15:07.090 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:15:07 + → module: 'TaskScheduler' +2025-10-23 22:15:07.090 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:15:07.097 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:15:07.137 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 22:15:07.138 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:15:07.138 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 22:15:07.138 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 22:15:07.139 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 22:15:07.163 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 22:15:07.179 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 22:15:07.179 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 22:15:07.180 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 14:03:22 + → module: 'NewsAPIClient' +2025-10-23 22:15:07.180 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 14:03:22 + → module: 'NewsAPIClient' +2025-10-23 22:15:07.180 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 22:15:07.590 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:15:07.616 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:15:07.624 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:15:07.903 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:15:07.905 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 22:15:07.906 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.73秒 + → module: 'NewsAPIClient' +2025-10-23 22:15:07.906 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 22:15:07.907 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 22:15:07.908 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 22:15:07.909 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 22:15:07.911 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 14:03:22 + → module: 'NewsAPIClient' +2025-10-23 22:15:07.911 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 14:03:22 + → module: 'NewsAPIClient' +2025-10-23 22:15:07.912 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.77秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 22:15:07.935 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 22:15:07.935 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:15:17.140 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:15:17 + → module: 'TaskScheduler' +2025-10-23 22:15:17.140 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:15:27.166 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:15:27 + → module: 'TaskScheduler' +2025-10-23 22:15:27.166 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:15:37.174 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:15:37 + → module: 'TaskScheduler' +2025-10-23 22:15:37.174 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:15:47.193 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:15:47 + → module: 'TaskScheduler' +2025-10-23 22:15:47.193 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:15:57.201 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:15:57 + → module: 'TaskScheduler' +2025-10-23 22:15:57.201 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:16:07.210 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:16:07 + → module: 'TaskScheduler' +2025-10-23 22:16:07.210 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:16:17.240 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:16:17 + → module: 'TaskScheduler' +2025-10-23 22:16:17.241 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:16:27.248 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:16:27 + → module: 'TaskScheduler' +2025-10-23 22:16:27.248 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:16:37.270 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:16:37 + → module: 'TaskScheduler' +2025-10-23 22:16:37.270 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:16:47.278 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:16:47 + → module: 'TaskScheduler' +2025-10-23 22:16:47.278 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:16:57.285 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:16:57 + → module: 'TaskScheduler' +2025-10-23 22:16:57.285 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:17:07.293 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:17:07 + → module: 'TaskScheduler' +2025-10-23 22:17:07.294 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:17:17.302 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:17:17 + → module: 'TaskScheduler' +2025-10-23 22:17:17.302 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:17:27.332 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:17:27 + → module: 'TaskScheduler' +2025-10-23 22:17:27.332 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:17:37.339 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:17:37 + → module: 'TaskScheduler' +2025-10-23 22:17:37.339 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:17:47.347 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:17:47 + → module: 'TaskScheduler' +2025-10-23 22:17:47.347 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:17:57.354 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:17:57 + → module: 'TaskScheduler' +2025-10-23 22:17:57.355 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:18:07.362 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:18:07 + → module: 'TaskScheduler' +2025-10-23 22:18:07.362 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:18:17.387 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:18:17 + → module: 'TaskScheduler' +2025-10-23 22:18:17.387 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:18:27.417 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:18:27 + → module: 'TaskScheduler' +2025-10-23 22:18:27.417 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:18:37.437 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:18:37 + → module: 'TaskScheduler' +2025-10-23 22:18:37.437 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:18:47.445 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:18:47 + → module: 'TaskScheduler' +2025-10-23 22:18:47.445 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:18:57.474 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:18:57 + → module: 'TaskScheduler' +2025-10-23 22:18:57.474 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:19:07.483 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:19:07 + → module: 'TaskScheduler' +2025-10-23 22:19:07.483 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:19:17.490 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:19:17 + → module: 'TaskScheduler' +2025-10-23 22:19:17.490 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:19:27.497 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:19:27 + → module: 'TaskScheduler' +2025-10-23 22:19:27.497 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:19:37.505 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:19:37 + → module: 'TaskScheduler' +2025-10-23 22:19:37.505 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:19:47.511 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:19:47 + → module: 'TaskScheduler' +2025-10-23 22:19:47.511 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:19:57.518 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:19:57 + → module: 'TaskScheduler' +2025-10-23 22:19:57.518 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:20:07.542 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:20:07 + → module: 'TaskScheduler' +2025-10-23 22:20:07.543 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:20:07.555 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:20:07.577 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 22:20:07.578 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:20:07.578 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 22:20:07.578 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 22:20:07.578 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 22:20:07.582 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 22:20:07.597 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 22:20:07.597 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 22:20:07.598 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 14:03:22 + → module: 'NewsAPIClient' +2025-10-23 22:20:07.598 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 14:03:22 + → module: 'NewsAPIClient' +2025-10-23 22:20:07.598 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 22:20:07.986 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:20:08.013 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:20:08.023 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:20:08.326 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:20:08.328 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 22:20:08.328 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.73秒 + → module: 'NewsAPIClient' +2025-10-23 22:20:08.328 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 22:20:08.329 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 22:20:08.330 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 22:20:08.331 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 22:20:08.333 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 14:03:22 + → module: 'NewsAPIClient' +2025-10-23 22:20:08.333 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 14:03:22 + → module: 'NewsAPIClient' +2025-10-23 22:20:08.333 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.76秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 22:20:08.360 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 22:20:08.361 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:20:17.579 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:20:17 + → module: 'TaskScheduler' +2025-10-23 22:20:17.579 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:20:27.598 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:20:27 + → module: 'TaskScheduler' +2025-10-23 22:20:27.598 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:20:37.606 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:20:37 + → module: 'TaskScheduler' +2025-10-23 22:20:37.606 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:20:47.616 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:20:47 + → module: 'TaskScheduler' +2025-10-23 22:20:47.616 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:20:57.625 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:20:57 + → module: 'TaskScheduler' +2025-10-23 22:20:57.625 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:21:07.633 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:21:07 + → module: 'TaskScheduler' +2025-10-23 22:21:07.633 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:21:17.642 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:21:17 + → module: 'TaskScheduler' +2025-10-23 22:21:17.642 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:21:27.662 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:21:27 + → module: 'TaskScheduler' +2025-10-23 22:21:27.662 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:21:37.684 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:21:37 + → module: 'TaskScheduler' +2025-10-23 22:21:37.684 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:21:47.711 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:21:47 + → module: 'TaskScheduler' +2025-10-23 22:21:47.711 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:21:57.741 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:21:57 + → module: 'TaskScheduler' +2025-10-23 22:21:57.741 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:22:07.762 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:22:07 + → module: 'TaskScheduler' +2025-10-23 22:22:07.762 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:22:17.772 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:22:17 + → module: 'TaskScheduler' +2025-10-23 22:22:17.772 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:22:27.793 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:22:27 + → module: 'TaskScheduler' +2025-10-23 22:22:27.793 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:22:37.802 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:22:37 + → module: 'TaskScheduler' +2025-10-23 22:22:37.802 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:22:47.810 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:22:47 + → module: 'TaskScheduler' +2025-10-23 22:22:47.810 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:22:57.833 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:22:57 + → module: 'TaskScheduler' +2025-10-23 22:22:57.833 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:23:07.864 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:23:07 + → module: 'TaskScheduler' +2025-10-23 22:23:07.864 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:23:17.887 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:23:17 + → module: 'TaskScheduler' +2025-10-23 22:23:17.887 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:23:27.911 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:23:27 + → module: 'TaskScheduler' +2025-10-23 22:23:27.911 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:23:37.938 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:23:37 + → module: 'TaskScheduler' +2025-10-23 22:23:37.938 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:23:47.947 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:23:47 + → module: 'TaskScheduler' +2025-10-23 22:23:47.947 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:23:57.958 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:23:57 + → module: 'TaskScheduler' +2025-10-23 22:23:57.958 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:24:07.980 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:24:07 + → module: 'TaskScheduler' +2025-10-23 22:24:07.980 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:24:17.991 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:24:17 + → module: 'TaskScheduler' +2025-10-23 22:24:17.991 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:24:28.023 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:24:28 + → module: 'TaskScheduler' +2025-10-23 22:24:28.023 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:24:38.045 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:24:38 + → module: 'TaskScheduler' +2025-10-23 22:24:38.045 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:24:48.077 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:24:48 + → module: 'TaskScheduler' +2025-10-23 22:24:48.077 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:24:58.097 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:24:58 + → module: 'TaskScheduler' +2025-10-23 22:24:58.097 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:25:08.127 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:25:08 + → module: 'TaskScheduler' +2025-10-23 22:25:08.127 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:25:08.153 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:25:08.161 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 22:25:08.162 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:25:08.163 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 22:25:08.163 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 22:25:08.163 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 22:25:08.166 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 22:25:08.194 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 22:25:08.196 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 22:25:08.197 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 14:03:22 + → module: 'NewsAPIClient' +2025-10-23 22:25:08.197 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 14:03:22 + → module: 'NewsAPIClient' +2025-10-23 22:25:08.197 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 22:25:08.591 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:25:08.619 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:25:08.632 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:25:08.989 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:25:08.992 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 22:25:08.992 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.80秒 + → module: 'NewsAPIClient' +2025-10-23 22:25:08.993 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 22:25:08.993 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 22:25:08.994 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 22:25:08.995 | DEBUG | rss_subscriptions:235 - 处理条目 1: 中国又一个五年目标 + → module: 'NewsAPIClient' +2025-10-23 22:25:08.998 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 22:25:08.999 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 22:25:09.000 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 22:25:09.020 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 22:25:09.022 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 22:25:09.022 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 22:25:09.022 | DEBUG | rss_subscriptions:235 - 处理条目 1: 中国又一个五年目标 + → module: 'NewsAPIClient' +2025-10-23 22:25:09.048 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 22:25:09.049 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 22:25:09.050 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 22:25:09.054 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 0 + → error_message: "Duplicate entry '中国又一个五年目标-2025-10-23 14:19:35' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '中国又一个五年目标...', '文章链接': 'http://www.chinanews.com/gn/2025/10-23/10503541.shtml...', '文章摘要': '中国又一个五年目标...', '发布时间': '2025-10-23 14:19:35...', '来源URL': 'https://www.chinanews.com.cn/rss/scr... +2025-10-23 22:25:09.055 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 0 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-23 22:25:09.055 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '中国又一个五年目标-2025-10-23 14:19:35' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '中国又一个五年目标-2025-10-23 14:19:35' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题':... +2025-10-23 22:25:09.056 | INFO | rss_subscriptions:259 - 成功写入 0/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 22:25:09.057 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 14:19:35 + → module: 'NewsAPIClient' +2025-10-23 22:25:09.057 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 14:19:35 + → module: 'NewsAPIClient' +2025-10-23 22:25:09.057 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.89秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 22:25:09.064 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 22:25:09.065 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:25:18.164 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:25:18 + → module: 'TaskScheduler' +2025-10-23 22:25:18.164 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:25:28.187 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:25:28 + → module: 'TaskScheduler' +2025-10-23 22:25:28.187 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:25:38.198 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:25:38 + → module: 'TaskScheduler' +2025-10-23 22:25:38.198 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:25:48.206 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:25:48 + → module: 'TaskScheduler' +2025-10-23 22:25:48.206 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:25:58.227 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:25:58 + → module: 'TaskScheduler' +2025-10-23 22:25:58.227 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:26:08.254 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:26:08 + → module: 'TaskScheduler' +2025-10-23 22:26:08.254 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:26:18.277 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:26:18 + → module: 'TaskScheduler' +2025-10-23 22:26:18.277 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:26:28.299 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:26:28 + → module: 'TaskScheduler' +2025-10-23 22:26:28.299 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:26:38.331 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:26:38 + → module: 'TaskScheduler' +2025-10-23 22:26:38.331 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:26:48.359 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:26:48 + → module: 'TaskScheduler' +2025-10-23 22:26:48.359 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:26:58.367 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:26:58 + → module: 'TaskScheduler' +2025-10-23 22:26:58.367 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:27:08.377 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:27:08 + → module: 'TaskScheduler' +2025-10-23 22:27:08.377 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:27:18.404 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:27:18 + → module: 'TaskScheduler' +2025-10-23 22:27:18.405 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:27:28.412 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:27:28 + → module: 'TaskScheduler' +2025-10-23 22:27:28.412 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:27:38.435 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:27:38 + → module: 'TaskScheduler' +2025-10-23 22:27:38.435 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:27:48.457 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:27:48 + → module: 'TaskScheduler' +2025-10-23 22:27:48.457 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:27:58.479 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:27:58 + → module: 'TaskScheduler' +2025-10-23 22:27:58.479 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:28:08.507 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:28:08 + → module: 'TaskScheduler' +2025-10-23 22:28:08.507 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:28:18.536 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:28:18 + → module: 'TaskScheduler' +2025-10-23 22:28:18.536 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:28:28.544 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:28:28 + → module: 'TaskScheduler' +2025-10-23 22:28:28.544 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:28:38.551 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:28:38 + → module: 'TaskScheduler' +2025-10-23 22:28:38.551 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:28:48.575 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:28:48 + → module: 'TaskScheduler' +2025-10-23 22:28:48.576 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:28:58.607 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:28:58 + → module: 'TaskScheduler' +2025-10-23 22:28:58.607 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:29:08.637 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:29:08 + → module: 'TaskScheduler' +2025-10-23 22:29:08.637 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:29:18.646 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:29:18 + → module: 'TaskScheduler' +2025-10-23 22:29:18.646 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:29:28.655 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:29:28 + → module: 'TaskScheduler' +2025-10-23 22:29:28.655 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:29:38.663 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:29:38 + → module: 'TaskScheduler' +2025-10-23 22:29:38.663 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:29:48.694 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:29:48 + → module: 'TaskScheduler' +2025-10-23 22:29:48.694 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:29:58.701 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:29:58 + → module: 'TaskScheduler' +2025-10-23 22:29:58.701 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:30:08.722 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:30:08 + → module: 'TaskScheduler' +2025-10-23 22:30:08.722 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:30:08.732 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:30:08.753 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 22:30:08.753 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:30:08.755 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 22:30:08.755 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 22:30:08.755 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 22:30:08.781 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 22:30:08.797 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 22:30:08.797 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 22:30:08.798 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 14:19:35 + → module: 'NewsAPIClient' +2025-10-23 22:30:08.798 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 14:19:35 + → module: 'NewsAPIClient' +2025-10-23 22:30:08.798 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 22:30:09.260 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:30:09.274 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:30:09.285 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:30:09.633 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:30:09.636 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 22:30:09.636 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.84秒 + → module: 'NewsAPIClient' +2025-10-23 22:30:09.637 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 22:30:09.638 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 22:30:09.639 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 22:30:09.640 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 22:30:09.642 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 14:19:35 + → module: 'NewsAPIClient' +2025-10-23 22:30:09.642 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 14:19:35 + → module: 'NewsAPIClient' +2025-10-23 22:30:09.643 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.89秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 22:30:09.651 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 22:30:09.652 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:30:18.756 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:30:18 + → module: 'TaskScheduler' +2025-10-23 22:30:18.756 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:30:28.762 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:30:28 + → module: 'TaskScheduler' +2025-10-23 22:30:28.762 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:30:38.771 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:30:38 + → module: 'TaskScheduler' +2025-10-23 22:30:38.771 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:30:48.780 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:30:48 + → module: 'TaskScheduler' +2025-10-23 22:30:48.780 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:30:58.814 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:30:58 + → module: 'TaskScheduler' +2025-10-23 22:30:58.814 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:31:08.838 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:31:08 + → module: 'TaskScheduler' +2025-10-23 22:31:08.839 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:31:18.847 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:31:18 + → module: 'TaskScheduler' +2025-10-23 22:31:18.847 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:31:28.879 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:31:28 + → module: 'TaskScheduler' +2025-10-23 22:31:28.879 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:31:38.888 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:31:38 + → module: 'TaskScheduler' +2025-10-23 22:31:38.888 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:31:48.920 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:31:48 + → module: 'TaskScheduler' +2025-10-23 22:31:48.920 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:31:58.929 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:31:58 + → module: 'TaskScheduler' +2025-10-23 22:31:58.929 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:32:08.937 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:32:08 + → module: 'TaskScheduler' +2025-10-23 22:32:08.937 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:32:18.948 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:32:18 + → module: 'TaskScheduler' +2025-10-23 22:32:18.948 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:32:28.958 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:32:28 + → module: 'TaskScheduler' +2025-10-23 22:32:28.958 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:32:38.965 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:32:38 + → module: 'TaskScheduler' +2025-10-23 22:32:38.965 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:32:48.974 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:32:48 + → module: 'TaskScheduler' +2025-10-23 22:32:48.974 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:32:58.981 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:32:58 + → module: 'TaskScheduler' +2025-10-23 22:32:58.981 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:33:08.989 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:33:08 + → module: 'TaskScheduler' +2025-10-23 22:33:08.990 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:33:19.001 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:33:19 + → module: 'TaskScheduler' +2025-10-23 22:33:19.001 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:33:29.009 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:33:29 + → module: 'TaskScheduler' +2025-10-23 22:33:29.009 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:33:39.018 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:33:39 + → module: 'TaskScheduler' +2025-10-23 22:33:39.018 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:33:49.026 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:33:49 + → module: 'TaskScheduler' +2025-10-23 22:33:49.026 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:33:59.056 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:33:59 + → module: 'TaskScheduler' +2025-10-23 22:33:59.056 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:34:09.064 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:34:09 + → module: 'TaskScheduler' +2025-10-23 22:34:09.064 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:34:19.095 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:34:19 + → module: 'TaskScheduler' +2025-10-23 22:34:19.095 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:34:29.105 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:34:29 + → module: 'TaskScheduler' +2025-10-23 22:34:29.105 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:34:39.113 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:34:39 + → module: 'TaskScheduler' +2025-10-23 22:34:39.113 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:34:49.121 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:34:49 + → module: 'TaskScheduler' +2025-10-23 22:34:49.121 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:34:59.130 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:34:59 + → module: 'TaskScheduler' +2025-10-23 22:34:59.130 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:35:09.137 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:35:09 + → module: 'TaskScheduler' +2025-10-23 22:35:09.137 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:35:09.148 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:35:09.183 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 22:35:09.184 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:35:09.184 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 22:35:09.184 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 22:35:09.185 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 22:35:09.212 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 22:35:09.215 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 22:35:09.216 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 22:35:09.216 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 14:19:35 + → module: 'NewsAPIClient' +2025-10-23 22:35:09.217 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 14:19:35 + → module: 'NewsAPIClient' +2025-10-23 22:35:09.217 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 22:35:09.639 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:35:09.654 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:35:09.663 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:35:10.003 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:35:10.004 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 22:35:10.004 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.79秒 + → module: 'NewsAPIClient' +2025-10-23 22:35:10.005 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 22:35:10.006 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 22:35:10.006 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 22:35:10.008 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 22:35:10.008 | DEBUG | rss_subscriptions:235 - 处理条目 1: 澳门特首岑浩辉:团结带领澳门社会各界抢抓国家“十五五”新机遇 + → module: 'NewsAPIClient' +2025-10-23 22:35:10.008 | DEBUG | rss_subscriptions:235 - 处理条目 2: 第三届中国—东盟(南宁)文化月开幕 + → module: 'NewsAPIClient' +2025-10-23 22:35:10.011 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 22:35:10.013 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 22:35:10.013 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 2 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 22:35:10.039 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 2 + → total_inserted: 2 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 22:35:10.040 | INFO | rss_subscriptions:259 - 成功写入 2/2 条记录 + → module: 'NewsAPIClient' +2025-10-23 22:35:10.041 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 14:27:31 + → module: 'NewsAPIClient' +2025-10-23 22:35:10.041 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 14:27:31 + → module: 'NewsAPIClient' +2025-10-23 22:35:10.042 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.86秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 22:35:10.085 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 22:35:10.085 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:35:19.186 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:35:19 + → module: 'TaskScheduler' +2025-10-23 22:35:19.187 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:35:29.194 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:35:29 + → module: 'TaskScheduler' +2025-10-23 22:35:29.194 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:35:39.202 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:35:39 + → module: 'TaskScheduler' +2025-10-23 22:35:39.202 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:35:49.211 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:35:49 + → module: 'TaskScheduler' +2025-10-23 22:35:49.211 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:35:59.221 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:35:59 + → module: 'TaskScheduler' +2025-10-23 22:35:59.221 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:36:09.248 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:36:09 + → module: 'TaskScheduler' +2025-10-23 22:36:09.248 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:36:19.281 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:36:19 + → module: 'TaskScheduler' +2025-10-23 22:36:19.282 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:36:29.300 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:36:29 + → module: 'TaskScheduler' +2025-10-23 22:36:29.300 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:36:39.308 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:36:39 + → module: 'TaskScheduler' +2025-10-23 22:36:39.308 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:36:49.317 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:36:49 + → module: 'TaskScheduler' +2025-10-23 22:36:49.317 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:36:59.347 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:36:59 + → module: 'TaskScheduler' +2025-10-23 22:36:59.347 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:37:09.376 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:37:09 + → module: 'TaskScheduler' +2025-10-23 22:37:09.376 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:37:19.383 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:37:19 + → module: 'TaskScheduler' +2025-10-23 22:37:19.383 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:37:29.391 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:37:29 + → module: 'TaskScheduler' +2025-10-23 22:37:29.391 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:37:39.417 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:37:39 + → module: 'TaskScheduler' +2025-10-23 22:37:39.417 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:37:49.425 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:37:49 + → module: 'TaskScheduler' +2025-10-23 22:37:49.425 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:37:59.433 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:37:59 + → module: 'TaskScheduler' +2025-10-23 22:37:59.433 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:38:09.441 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:38:09 + → module: 'TaskScheduler' +2025-10-23 22:38:09.441 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:38:19.459 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:38:19 + → module: 'TaskScheduler' +2025-10-23 22:38:19.459 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:38:29.467 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:38:29 + → module: 'TaskScheduler' +2025-10-23 22:38:29.467 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:38:39.492 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:38:39 + → module: 'TaskScheduler' +2025-10-23 22:38:39.492 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:38:49.499 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:38:49 + → module: 'TaskScheduler' +2025-10-23 22:38:49.499 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:38:59.506 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:38:59 + → module: 'TaskScheduler' +2025-10-23 22:38:59.506 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:39:09.513 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:39:09 + → module: 'TaskScheduler' +2025-10-23 22:39:09.513 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:39:19.520 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:39:19 + → module: 'TaskScheduler' +2025-10-23 22:39:19.520 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:39:29.529 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:39:29 + → module: 'TaskScheduler' +2025-10-23 22:39:29.529 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:39:39.538 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:39:39 + → module: 'TaskScheduler' +2025-10-23 22:39:39.538 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:39:49.564 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:39:49 + → module: 'TaskScheduler' +2025-10-23 22:39:49.564 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:39:59.589 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:39:59 + → module: 'TaskScheduler' +2025-10-23 22:39:59.589 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:40:09.597 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:40:09 + → module: 'TaskScheduler' +2025-10-23 22:40:09.597 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:40:09.605 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:40:09.647 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 22:40:09.647 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:40:09.648 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 22:40:09.648 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 22:40:09.648 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 22:40:09.673 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 22:40:09.690 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 22:40:09.691 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 22:40:09.691 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 14:27:31 + → module: 'NewsAPIClient' +2025-10-23 22:40:09.691 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 14:27:31 + → module: 'NewsAPIClient' +2025-10-23 22:40:09.692 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 22:40:10.117 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:40:10.133 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:40:10.150 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:40:10.438 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:40:10.439 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 22:40:10.440 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.75秒 + → module: 'NewsAPIClient' +2025-10-23 22:40:10.440 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 22:40:10.441 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 22:40:10.442 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 22:40:10.442 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 22:40:10.444 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 14:27:31 + → module: 'NewsAPIClient' +2025-10-23 22:40:10.445 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 14:27:31 + → module: 'NewsAPIClient' +2025-10-23 22:40:10.445 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.80秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 22:40:10.522 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 22:40:10.522 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:40:19.649 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:40:19 + → module: 'TaskScheduler' +2025-10-23 22:40:19.649 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:40:29.660 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:40:29 + → module: 'TaskScheduler' +2025-10-23 22:40:29.660 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:40:39.669 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:40:39 + → module: 'TaskScheduler' +2025-10-23 22:40:39.670 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:40:49.724 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:40:49 + → module: 'TaskScheduler' +2025-10-23 22:40:49.724 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:40:59.732 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:40:59 + → module: 'TaskScheduler' +2025-10-23 22:40:59.732 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:41:09.739 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:41:09 + → module: 'TaskScheduler' +2025-10-23 22:41:09.739 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:41:19.748 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:41:19 + → module: 'TaskScheduler' +2025-10-23 22:41:19.749 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:41:29.758 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:41:29 + → module: 'TaskScheduler' +2025-10-23 22:41:29.758 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:41:39.778 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:41:39 + → module: 'TaskScheduler' +2025-10-23 22:41:39.778 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:41:49.790 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:41:49 + → module: 'TaskScheduler' +2025-10-23 22:41:49.790 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:41:59.797 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:41:59 + → module: 'TaskScheduler' +2025-10-23 22:41:59.797 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:42:09.804 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:42:09 + → module: 'TaskScheduler' +2025-10-23 22:42:09.805 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:42:19.831 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:42:19 + → module: 'TaskScheduler' +2025-10-23 22:42:19.831 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:42:29.855 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:42:29 + → module: 'TaskScheduler' +2025-10-23 22:42:29.855 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:42:39.875 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:42:39 + → module: 'TaskScheduler' +2025-10-23 22:42:39.875 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:42:49.893 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:42:49 + → module: 'TaskScheduler' +2025-10-23 22:42:49.893 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:42:59.918 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:42:59 + → module: 'TaskScheduler' +2025-10-23 22:42:59.918 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:43:09.925 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:43:09 + → module: 'TaskScheduler' +2025-10-23 22:43:09.925 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:43:19.943 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:43:19 + → module: 'TaskScheduler' +2025-10-23 22:43:19.943 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:43:29.962 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:43:29 + → module: 'TaskScheduler' +2025-10-23 22:43:29.962 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:43:39.990 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:43:39 + → module: 'TaskScheduler' +2025-10-23 22:43:39.990 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:43:50.023 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:43:50 + → module: 'TaskScheduler' +2025-10-23 22:43:50.023 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:44:00.032 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:44:00 + → module: 'TaskScheduler' +2025-10-23 22:44:00.032 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:44:10.063 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:44:10 + → module: 'TaskScheduler' +2025-10-23 22:44:10.064 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:44:20.085 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:44:20 + → module: 'TaskScheduler' +2025-10-23 22:44:20.085 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:44:30.115 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:44:30 + → module: 'TaskScheduler' +2025-10-23 22:44:30.115 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:44:40.123 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:44:40 + → module: 'TaskScheduler' +2025-10-23 22:44:40.123 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:44:50.134 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:44:50 + → module: 'TaskScheduler' +2025-10-23 22:44:50.134 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:45:00.157 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:45:00 + → module: 'TaskScheduler' +2025-10-23 22:45:00.157 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:45:00.187 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:45:00.218 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 22:45:00.219 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:45:00.219 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 22:45:00.219 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 22:45:00.220 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 22:45:00.223 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 22:45:00.245 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 22:45:00.245 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 22:45:00.246 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 14:27:31 + → module: 'NewsAPIClient' +2025-10-23 22:45:00.246 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 14:27:31 + → module: 'NewsAPIClient' +2025-10-23 22:45:00.246 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 22:45:00.658 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:45:00.685 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:45:00.715 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:45:00.973 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:45:00.975 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 22:45:00.976 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.73秒 + → module: 'NewsAPIClient' +2025-10-23 22:45:00.976 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 22:45:00.977 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 22:45:00.978 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 22:45:00.978 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 22:45:00.980 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 14:27:31 + → module: 'NewsAPIClient' +2025-10-23 22:45:00.980 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 14:27:31 + → module: 'NewsAPIClient' +2025-10-23 22:45:00.980 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.76秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 22:45:01.010 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 22:45:01.011 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:45:10.221 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:45:10 + → module: 'TaskScheduler' +2025-10-23 22:45:10.221 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:45:20.229 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:45:20 + → module: 'TaskScheduler' +2025-10-23 22:45:20.229 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:45:30.236 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:45:30 + → module: 'TaskScheduler' +2025-10-23 22:45:30.236 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:45:40.253 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:45:40 + → module: 'TaskScheduler' +2025-10-23 22:45:40.253 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:45:50.261 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:45:50 + → module: 'TaskScheduler' +2025-10-23 22:45:50.261 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:46:00.269 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:46:00 + → module: 'TaskScheduler' +2025-10-23 22:46:00.269 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:46:10.296 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:46:10 + → module: 'TaskScheduler' +2025-10-23 22:46:10.296 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:46:20.325 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:46:20 + → module: 'TaskScheduler' +2025-10-23 22:46:20.325 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:46:30.333 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:46:30 + → module: 'TaskScheduler' +2025-10-23 22:46:30.333 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:46:40.357 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:46:40 + → module: 'TaskScheduler' +2025-10-23 22:46:40.357 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:46:50.379 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:46:50 + → module: 'TaskScheduler' +2025-10-23 22:46:50.379 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:47:00.386 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:47:00 + → module: 'TaskScheduler' +2025-10-23 22:47:00.386 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:47:10.394 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:47:10 + → module: 'TaskScheduler' +2025-10-23 22:47:10.394 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:47:20.403 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:47:20 + → module: 'TaskScheduler' +2025-10-23 22:47:20.403 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:47:30.411 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:47:30 + → module: 'TaskScheduler' +2025-10-23 22:47:30.411 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:47:40.430 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:47:40 + → module: 'TaskScheduler' +2025-10-23 22:47:40.430 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:47:50.440 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:47:50 + → module: 'TaskScheduler' +2025-10-23 22:47:50.440 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:48:00.465 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:48:00 + → module: 'TaskScheduler' +2025-10-23 22:48:00.466 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:48:10.490 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:48:10 + → module: 'TaskScheduler' +2025-10-23 22:48:10.490 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:48:20.498 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:48:20 + → module: 'TaskScheduler' +2025-10-23 22:48:20.498 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:48:30.518 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:48:30 + → module: 'TaskScheduler' +2025-10-23 22:48:30.518 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:48:40.526 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:48:40 + → module: 'TaskScheduler' +2025-10-23 22:48:40.526 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:48:50.549 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:48:50 + → module: 'TaskScheduler' +2025-10-23 22:48:50.549 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:49:00.557 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:49:00 + → module: 'TaskScheduler' +2025-10-23 22:49:00.557 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:49:10.566 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:49:10 + → module: 'TaskScheduler' +2025-10-23 22:49:10.567 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:49:20.579 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:49:20 + → module: 'TaskScheduler' +2025-10-23 22:49:20.579 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:49:30.586 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:49:30 + → module: 'TaskScheduler' +2025-10-23 22:49:30.586 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:49:40.593 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:49:40 + → module: 'TaskScheduler' +2025-10-23 22:49:40.593 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:49:50.601 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:49:50 + → module: 'TaskScheduler' +2025-10-23 22:49:50.601 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:50:00.614 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:50:00 + → module: 'TaskScheduler' +2025-10-23 22:50:00.614 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:50:00.624 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:50:00.652 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 22:50:00.652 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:50:00.653 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 22:50:00.653 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 22:50:00.653 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 22:50:00.656 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 22:50:00.684 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 22:50:00.685 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 22:50:00.685 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 14:27:31 + → module: 'NewsAPIClient' +2025-10-23 22:50:00.686 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 14:27:31 + → module: 'NewsAPIClient' +2025-10-23 22:50:00.686 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 22:50:01.117 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:50:01.131 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:50:01.146 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:50:01.480 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:50:01.481 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 22:50:01.482 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.80秒 + → module: 'NewsAPIClient' +2025-10-23 22:50:01.482 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 22:50:01.484 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 22:50:01.484 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 22:50:01.485 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 22:50:01.488 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 14:27:31 + → module: 'NewsAPIClient' +2025-10-23 22:50:01.488 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 14:27:31 + → module: 'NewsAPIClient' +2025-10-23 22:50:01.488 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.83秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 22:50:01.508 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 22:50:01.509 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:50:10.654 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:50:10 + → module: 'TaskScheduler' +2025-10-23 22:50:10.654 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:50:20.662 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:50:20 + → module: 'TaskScheduler' +2025-10-23 22:50:20.662 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:50:30.670 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:50:30 + → module: 'TaskScheduler' +2025-10-23 22:50:30.670 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:50:40.697 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:50:40 + → module: 'TaskScheduler' +2025-10-23 22:50:40.697 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:50:50.704 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:50:50 + → module: 'TaskScheduler' +2025-10-23 22:50:50.704 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:51:00.712 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:51:00 + → module: 'TaskScheduler' +2025-10-23 22:51:00.712 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:51:10.720 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:51:10 + → module: 'TaskScheduler' +2025-10-23 22:51:10.720 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:51:20.728 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:51:20 + → module: 'TaskScheduler' +2025-10-23 22:51:20.728 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:51:30.737 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:51:30 + → module: 'TaskScheduler' +2025-10-23 22:51:30.737 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:51:40.746 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:51:40 + → module: 'TaskScheduler' +2025-10-23 22:51:40.746 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:51:50.753 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:51:50 + → module: 'TaskScheduler' +2025-10-23 22:51:50.753 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:52:00.761 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:52:00 + → module: 'TaskScheduler' +2025-10-23 22:52:00.762 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:52:10.795 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:52:10 + → module: 'TaskScheduler' +2025-10-23 22:52:10.795 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:52:20.804 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:52:20 + → module: 'TaskScheduler' +2025-10-23 22:52:20.804 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:52:30.813 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:52:30 + → module: 'TaskScheduler' +2025-10-23 22:52:30.813 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:52:40.821 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:52:40 + → module: 'TaskScheduler' +2025-10-23 22:52:40.821 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:52:50.829 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:52:50 + → module: 'TaskScheduler' +2025-10-23 22:52:50.829 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:53:00.849 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:53:00 + → module: 'TaskScheduler' +2025-10-23 22:53:00.849 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:53:10.857 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:53:10 + → module: 'TaskScheduler' +2025-10-23 22:53:10.857 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:53:20.865 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:53:20 + → module: 'TaskScheduler' +2025-10-23 22:53:20.865 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:53:30.873 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:53:30 + → module: 'TaskScheduler' +2025-10-23 22:53:30.873 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:53:40.888 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:53:40 + → module: 'TaskScheduler' +2025-10-23 22:53:40.888 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:53:50.895 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:53:50 + → module: 'TaskScheduler' +2025-10-23 22:53:50.895 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:54:00.922 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:54:00 + → module: 'TaskScheduler' +2025-10-23 22:54:00.922 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:54:10.943 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:54:10 + → module: 'TaskScheduler' +2025-10-23 22:54:10.943 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:54:20.977 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:54:20 + → module: 'TaskScheduler' +2025-10-23 22:54:20.977 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:54:30.986 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:54:30 + → module: 'TaskScheduler' +2025-10-23 22:54:30.986 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:54:40.994 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:54:40 + → module: 'TaskScheduler' +2025-10-23 22:54:40.994 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:54:51.003 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:54:51 + → module: 'TaskScheduler' +2025-10-23 22:54:51.003 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:55:01.011 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:55:01 + → module: 'TaskScheduler' +2025-10-23 22:55:01.011 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:55:01.019 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:55:01.041 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 22:55:01.041 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:55:01.042 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 22:55:01.042 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 22:55:01.042 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 22:55:01.046 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 22:55:01.074 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 22:55:01.074 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 22:55:01.075 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 14:27:31 + → module: 'NewsAPIClient' +2025-10-23 22:55:01.075 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 14:27:31 + → module: 'NewsAPIClient' +2025-10-23 22:55:01.075 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 22:55:01.479 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:55:01.490 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:55:01.502 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:55:01.816 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 22:55:01.817 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 22:55:01.818 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.74秒 + → module: 'NewsAPIClient' +2025-10-23 22:55:01.818 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 22:55:01.818 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 22:55:01.820 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 22:55:01.821 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 22:55:01.823 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 14:27:31 + → module: 'NewsAPIClient' +2025-10-23 22:55:01.823 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 14:27:31 + → module: 'NewsAPIClient' +2025-10-23 22:55:01.823 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.78秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 22:55:01.832 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 22:55:01.833 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 22:55:11.043 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:55:11 + → module: 'TaskScheduler' +2025-10-23 22:55:11.044 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:55:21.073 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:55:21 + → module: 'TaskScheduler' +2025-10-23 22:55:21.073 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:55:31.081 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:55:31 + → module: 'TaskScheduler' +2025-10-23 22:55:31.081 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:55:41.089 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:55:41 + → module: 'TaskScheduler' +2025-10-23 22:55:41.089 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:55:51.097 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:55:51 + → module: 'TaskScheduler' +2025-10-23 22:55:51.097 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:56:01.107 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:56:01 + → module: 'TaskScheduler' +2025-10-23 22:56:01.107 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:56:11.134 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:56:11 + → module: 'TaskScheduler' +2025-10-23 22:56:11.134 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:56:21.142 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:56:21 + → module: 'TaskScheduler' +2025-10-23 22:56:21.142 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:56:31.149 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:56:31 + → module: 'TaskScheduler' +2025-10-23 22:56:31.149 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:56:41.157 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:56:41 + → module: 'TaskScheduler' +2025-10-23 22:56:41.157 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:56:51.192 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:56:51 + → module: 'TaskScheduler' +2025-10-23 22:56:51.192 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:57:01.201 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:57:01 + → module: 'TaskScheduler' +2025-10-23 22:57:01.201 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:57:11.211 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:57:11 + → module: 'TaskScheduler' +2025-10-23 22:57:11.211 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:57:21.237 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:57:21 + → module: 'TaskScheduler' +2025-10-23 22:57:21.237 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:57:31.244 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:57:31 + → module: 'TaskScheduler' +2025-10-23 22:57:31.244 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:57:41.252 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:57:41 + → module: 'TaskScheduler' +2025-10-23 22:57:41.252 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:57:51.260 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:57:51 + → module: 'TaskScheduler' +2025-10-23 22:57:51.260 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:58:01.268 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:58:01 + → module: 'TaskScheduler' +2025-10-23 22:58:01.268 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:58:11.297 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:58:11 + → module: 'TaskScheduler' +2025-10-23 22:58:11.297 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:58:21.327 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:58:21 + → module: 'TaskScheduler' +2025-10-23 22:58:21.327 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:58:31.336 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:58:31 + → module: 'TaskScheduler' +2025-10-23 22:58:31.336 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:58:41.360 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:58:41 + → module: 'TaskScheduler' +2025-10-23 22:58:41.360 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:58:51.392 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:58:51 + → module: 'TaskScheduler' +2025-10-23 22:58:51.392 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:59:01.400 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:59:01 + → module: 'TaskScheduler' +2025-10-23 22:59:01.400 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:59:11.425 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:59:11 + → module: 'TaskScheduler' +2025-10-23 22:59:11.425 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:59:21.432 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:59:21 + → module: 'TaskScheduler' +2025-10-23 22:59:21.432 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:59:31.440 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:59:31 + → module: 'TaskScheduler' +2025-10-23 22:59:31.441 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:59:41.448 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:59:41 + → module: 'TaskScheduler' +2025-10-23 22:59:41.448 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 22:59:51.468 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 22:59:51 + → module: 'TaskScheduler' +2025-10-23 22:59:51.468 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:00:01.477 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:00:01 + → module: 'TaskScheduler' +2025-10-23 23:00:01.477 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:00:01.485 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:00:01.533 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 23:00:01.534 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:00:01.534 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 23:00:01.535 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 23:00:01.535 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 23:00:01.556 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 23:00:01.560 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 23:00:01.560 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 23:00:01.561 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 14:27:31 + → module: 'NewsAPIClient' +2025-10-23 23:00:01.561 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 14:27:31 + → module: 'NewsAPIClient' +2025-10-23 23:00:01.561 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 23:00:01.968 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:00:01.997 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:00:02.006 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:00:02.298 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:00:02.300 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 23:00:02.301 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.74秒 + → module: 'NewsAPIClient' +2025-10-23 23:00:02.301 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 23:00:02.301 | DEBUG | rss_subscriptions:235 - 处理条目 1: 俄外交部:欧盟对俄制裁反噬自身且能力耗尽 + → module: 'NewsAPIClient' +2025-10-23 23:00:02.328 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 23:00:02.331 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 23:00:02.332 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 23:00:02.343 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 23:00:02.344 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 23:00:02.344 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 23:00:02.346 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 23:00:02.347 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 23:00:02.349 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 14:52:25 + → module: 'NewsAPIClient' +2025-10-23 23:00:02.349 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 14:52:25 + → module: 'NewsAPIClient' +2025-10-23 23:00:02.350 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.82秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 23:00:02.367 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 23:00:02.367 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:00:11.536 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:00:11 + → module: 'TaskScheduler' +2025-10-23 23:00:11.536 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:00:21.565 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:00:21 + → module: 'TaskScheduler' +2025-10-23 23:00:21.565 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:00:31.573 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:00:31 + → module: 'TaskScheduler' +2025-10-23 23:00:31.573 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:00:41.581 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:00:41 + → module: 'TaskScheduler' +2025-10-23 23:00:41.581 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:00:51.589 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:00:51 + → module: 'TaskScheduler' +2025-10-23 23:00:51.590 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:01:01.599 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:01:01 + → module: 'TaskScheduler' +2025-10-23 23:01:01.599 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:01:11.607 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:01:11 + → module: 'TaskScheduler' +2025-10-23 23:01:11.607 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:01:21.637 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:01:21 + → module: 'TaskScheduler' +2025-10-23 23:01:21.637 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:01:31.645 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:01:31 + → module: 'TaskScheduler' +2025-10-23 23:01:31.645 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:01:41.656 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:01:41 + → module: 'TaskScheduler' +2025-10-23 23:01:41.656 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:01:51.666 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:01:51 + → module: 'TaskScheduler' +2025-10-23 23:01:51.666 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:02:01.673 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:02:01 + → module: 'TaskScheduler' +2025-10-23 23:02:01.673 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:02:11.680 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:02:11 + → module: 'TaskScheduler' +2025-10-23 23:02:11.680 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:02:21.689 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:02:21 + → module: 'TaskScheduler' +2025-10-23 23:02:21.689 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:02:31.710 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:02:31 + → module: 'TaskScheduler' +2025-10-23 23:02:31.710 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:02:41.721 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:02:41 + → module: 'TaskScheduler' +2025-10-23 23:02:41.721 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:02:51.730 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:02:51 + → module: 'TaskScheduler' +2025-10-23 23:02:51.730 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:03:01.738 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:03:01 + → module: 'TaskScheduler' +2025-10-23 23:03:01.738 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:03:11.745 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:03:11 + → module: 'TaskScheduler' +2025-10-23 23:03:11.745 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:03:21.754 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:03:21 + → module: 'TaskScheduler' +2025-10-23 23:03:21.754 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:03:31.763 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:03:31 + → module: 'TaskScheduler' +2025-10-23 23:03:31.763 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:03:41.774 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:03:41 + → module: 'TaskScheduler' +2025-10-23 23:03:41.775 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:03:51.808 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:03:51 + → module: 'TaskScheduler' +2025-10-23 23:03:51.809 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:04:01.826 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:04:01 + → module: 'TaskScheduler' +2025-10-23 23:04:01.826 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:04:11.848 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:04:11 + → module: 'TaskScheduler' +2025-10-23 23:04:11.848 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:04:21.858 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:04:21 + → module: 'TaskScheduler' +2025-10-23 23:04:21.858 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:04:31.884 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:04:31 + → module: 'TaskScheduler' +2025-10-23 23:04:31.884 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:04:41.916 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:04:41 + → module: 'TaskScheduler' +2025-10-23 23:04:41.916 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:04:51.924 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:04:51 + → module: 'TaskScheduler' +2025-10-23 23:04:51.925 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:05:01.955 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:05:01 + → module: 'TaskScheduler' +2025-10-23 23:05:01.955 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:05:01.986 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:05:01.993 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 23:05:01.994 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:05:01.995 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 23:05:01.995 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 23:05:01.995 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 23:05:01.998 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 23:05:02.027 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 23:05:02.028 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 23:05:02.028 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 14:52:25 + → module: 'NewsAPIClient' +2025-10-23 23:05:02.028 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 14:52:25 + → module: 'NewsAPIClient' +2025-10-23 23:05:02.029 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 23:05:02.456 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:05:02.474 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:05:02.528 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:05:02.841 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:05:02.843 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 23:05:02.844 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.81秒 + → module: 'NewsAPIClient' +2025-10-23 23:05:02.844 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 23:05:02.845 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 23:05:02.846 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 23:05:02.847 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 23:05:02.850 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 14:52:25 + → module: 'NewsAPIClient' +2025-10-23 23:05:02.850 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 14:52:25 + → module: 'NewsAPIClient' +2025-10-23 23:05:02.851 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.86秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 23:05:02.862 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 23:05:02.863 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:05:11.996 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:05:11 + → module: 'TaskScheduler' +2025-10-23 23:05:11.996 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:05:22.004 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:05:22 + → module: 'TaskScheduler' +2025-10-23 23:05:22.004 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:05:32.011 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:05:32 + → module: 'TaskScheduler' +2025-10-23 23:05:32.011 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:05:42.020 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:05:42 + → module: 'TaskScheduler' +2025-10-23 23:05:42.020 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:05:52.040 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:05:52 + → module: 'TaskScheduler' +2025-10-23 23:05:52.040 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:06:02.049 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:06:02 + → module: 'TaskScheduler' +2025-10-23 23:06:02.049 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:06:12.057 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:06:12 + → module: 'TaskScheduler' +2025-10-23 23:06:12.057 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:06:22.082 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:06:22 + → module: 'TaskScheduler' +2025-10-23 23:06:22.082 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:06:32.090 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:06:32 + → module: 'TaskScheduler' +2025-10-23 23:06:32.091 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:06:42.112 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:06:42 + → module: 'TaskScheduler' +2025-10-23 23:06:42.112 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:06:52.139 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:06:52 + → module: 'TaskScheduler' +2025-10-23 23:06:52.139 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:07:02.149 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:07:02 + → module: 'TaskScheduler' +2025-10-23 23:07:02.149 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:07:12.157 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:07:12 + → module: 'TaskScheduler' +2025-10-23 23:07:12.157 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:07:22.165 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:07:22 + → module: 'TaskScheduler' +2025-10-23 23:07:22.166 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:07:32.174 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:07:32 + → module: 'TaskScheduler' +2025-10-23 23:07:32.174 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:07:42.193 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:07:42 + → module: 'TaskScheduler' +2025-10-23 23:07:42.193 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:07:52.224 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:07:52 + → module: 'TaskScheduler' +2025-10-23 23:07:52.224 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:08:02.242 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:08:02 + → module: 'TaskScheduler' +2025-10-23 23:08:02.242 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:08:12.250 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:08:12 + → module: 'TaskScheduler' +2025-10-23 23:08:12.250 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:08:12.256 | INFO | main:87 - 小时任务统计 + → module: 'Main' + → 总任务数: 12 + → 成功: 12 + → 失败: 0 +2025-10-23 23:08:22.258 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:08:22 + → module: 'TaskScheduler' +2025-10-23 23:08:22.259 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:08:32.267 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:08:32 + → module: 'TaskScheduler' +2025-10-23 23:08:32.267 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:08:42.298 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:08:42 + → module: 'TaskScheduler' +2025-10-23 23:08:42.298 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:08:52.306 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:08:52 + → module: 'TaskScheduler' +2025-10-23 23:08:52.307 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:09:02.314 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:09:02 + → module: 'TaskScheduler' +2025-10-23 23:09:02.314 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:09:12.332 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:09:12 + → module: 'TaskScheduler' +2025-10-23 23:09:12.332 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:09:22.343 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:09:22 + → module: 'TaskScheduler' +2025-10-23 23:09:22.343 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:09:32.350 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:09:32 + → module: 'TaskScheduler' +2025-10-23 23:09:32.350 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:09:42.357 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:09:42 + → module: 'TaskScheduler' +2025-10-23 23:09:42.357 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:09:52.366 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:09:52 + → module: 'TaskScheduler' +2025-10-23 23:09:52.366 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:10:02.391 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:10:02 + → module: 'TaskScheduler' +2025-10-23 23:10:02.391 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:10:02.400 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:10:02.446 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 23:10:02.446 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:10:02.447 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 23:10:02.447 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 23:10:02.447 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 23:10:02.471 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 23:10:02.487 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 23:10:02.487 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 23:10:02.488 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 14:52:25 + → module: 'NewsAPIClient' +2025-10-23 23:10:02.488 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 14:52:25 + → module: 'NewsAPIClient' +2025-10-23 23:10:02.489 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 23:10:02.903 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:10:02.915 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:10:02.976 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:10:03.233 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:10:03.235 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 23:10:03.236 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.75秒 + → module: 'NewsAPIClient' +2025-10-23 23:10:03.236 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 23:10:03.236 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 23:10:03.238 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 23:10:03.240 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 23:10:03.241 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 14:52:25 + → module: 'NewsAPIClient' +2025-10-23 23:10:03.241 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 14:52:25 + → module: 'NewsAPIClient' +2025-10-23 23:10:03.241 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.80秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 23:10:03.251 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 23:10:03.252 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:10:12.448 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:10:12 + → module: 'TaskScheduler' +2025-10-23 23:10:12.448 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:10:22.456 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:10:22 + → module: 'TaskScheduler' +2025-10-23 23:10:22.456 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:10:32.464 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:10:32 + → module: 'TaskScheduler' +2025-10-23 23:10:32.464 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:10:42.472 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:10:42 + → module: 'TaskScheduler' +2025-10-23 23:10:42.472 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:10:52.484 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:10:52 + → module: 'TaskScheduler' +2025-10-23 23:10:52.484 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:11:02.491 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:11:02 + → module: 'TaskScheduler' +2025-10-23 23:11:02.491 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:11:12.498 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:11:12 + → module: 'TaskScheduler' +2025-10-23 23:11:12.498 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:11:22.509 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:11:22 + → module: 'TaskScheduler' +2025-10-23 23:11:22.509 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:11:32.516 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:11:32 + → module: 'TaskScheduler' +2025-10-23 23:11:32.516 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:11:42.524 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:11:42 + → module: 'TaskScheduler' +2025-10-23 23:11:42.524 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:11:52.532 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:11:52 + → module: 'TaskScheduler' +2025-10-23 23:11:52.532 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:12:02.541 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:12:02 + → module: 'TaskScheduler' +2025-10-23 23:12:02.541 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:12:12.549 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:12:12 + → module: 'TaskScheduler' +2025-10-23 23:12:12.549 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:12:22.572 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:12:22 + → module: 'TaskScheduler' +2025-10-23 23:12:22.572 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:12:32.580 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:12:32 + → module: 'TaskScheduler' +2025-10-23 23:12:32.580 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:12:42.589 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:12:42 + → module: 'TaskScheduler' +2025-10-23 23:12:42.589 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:12:52.597 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:12:52 + → module: 'TaskScheduler' +2025-10-23 23:12:52.597 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:13:02.605 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:13:02 + → module: 'TaskScheduler' +2025-10-23 23:13:02.605 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:13:12.629 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:13:12 + → module: 'TaskScheduler' +2025-10-23 23:13:12.629 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:13:22.638 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:13:22 + → module: 'TaskScheduler' +2025-10-23 23:13:22.638 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:13:32.662 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:13:32 + → module: 'TaskScheduler' +2025-10-23 23:13:32.662 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:13:42.671 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:13:42 + → module: 'TaskScheduler' +2025-10-23 23:13:42.671 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:13:52.680 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:13:52 + → module: 'TaskScheduler' +2025-10-23 23:13:52.680 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:14:02.706 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:14:02 + → module: 'TaskScheduler' +2025-10-23 23:14:02.706 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:14:12.713 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:14:12 + → module: 'TaskScheduler' +2025-10-23 23:14:12.713 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:14:22.722 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:14:22 + → module: 'TaskScheduler' +2025-10-23 23:14:22.722 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:14:32.729 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:14:32 + → module: 'TaskScheduler' +2025-10-23 23:14:32.729 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:14:42.761 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:14:42 + → module: 'TaskScheduler' +2025-10-23 23:14:42.761 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:14:52.790 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:14:52 + → module: 'TaskScheduler' +2025-10-23 23:14:52.790 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:15:02.813 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:15:02 + → module: 'TaskScheduler' +2025-10-23 23:15:02.814 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:15:02.843 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:15:02.882 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 23:15:02.882 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:15:02.882 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 23:15:02.883 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 23:15:02.883 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 23:15:02.887 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 23:15:02.915 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 23:15:02.915 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 23:15:02.916 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 14:52:25 + → module: 'NewsAPIClient' +2025-10-23 23:15:02.916 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 14:52:25 + → module: 'NewsAPIClient' +2025-10-23 23:15:02.916 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 23:15:03.322 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:15:03.334 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:15:03.355 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:15:03.678 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:15:03.680 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 23:15:03.681 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.76秒 + → module: 'NewsAPIClient' +2025-10-23 23:15:03.681 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 23:15:03.682 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 23:15:03.683 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 23:15:03.684 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 23:15:03.685 | DEBUG | rss_subscriptions:235 - 处理条目 1: 我国成功发射通信技术试验卫星二十号 + → module: 'NewsAPIClient' +2025-10-23 23:15:03.688 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 23:15:03.690 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 23:15:03.692 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 23:15:03.713 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 23:15:03.714 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 23:15:03.715 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 15:10:10 + → module: 'NewsAPIClient' +2025-10-23 23:15:03.715 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 15:10:10 + → module: 'NewsAPIClient' +2025-10-23 23:15:03.715 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.83秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 23:15:03.723 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 23:15:03.724 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:15:12.884 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:15:12 + → module: 'TaskScheduler' +2025-10-23 23:15:12.884 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:15:22.893 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:15:22 + → module: 'TaskScheduler' +2025-10-23 23:15:22.893 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:15:32.900 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:15:32 + → module: 'TaskScheduler' +2025-10-23 23:15:32.900 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:15:42.910 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:15:42 + → module: 'TaskScheduler' +2025-10-23 23:15:42.910 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:15:52.918 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:15:52 + → module: 'TaskScheduler' +2025-10-23 23:15:52.918 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:16:02.926 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:16:02 + → module: 'TaskScheduler' +2025-10-23 23:16:02.927 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:16:12.948 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:16:12 + → module: 'TaskScheduler' +2025-10-23 23:16:12.948 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:16:22.979 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:16:22 + → module: 'TaskScheduler' +2025-10-23 23:16:22.979 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:16:32.987 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:16:32 + → module: 'TaskScheduler' +2025-10-23 23:16:32.987 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:16:42.995 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:16:42 + → module: 'TaskScheduler' +2025-10-23 23:16:42.995 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:16:53.027 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:16:53 + → module: 'TaskScheduler' +2025-10-23 23:16:53.027 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:17:03.053 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:17:03 + → module: 'TaskScheduler' +2025-10-23 23:17:03.053 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:17:13.060 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:17:13 + → module: 'TaskScheduler' +2025-10-23 23:17:13.060 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:17:23.070 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:17:23 + → module: 'TaskScheduler' +2025-10-23 23:17:23.071 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:17:33.088 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:17:33 + → module: 'TaskScheduler' +2025-10-23 23:17:33.089 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:17:43.097 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:17:43 + → module: 'TaskScheduler' +2025-10-23 23:17:43.098 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:17:53.106 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:17:53 + → module: 'TaskScheduler' +2025-10-23 23:17:53.106 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:18:03.116 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:18:03 + → module: 'TaskScheduler' +2025-10-23 23:18:03.116 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:18:13.126 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:18:13 + → module: 'TaskScheduler' +2025-10-23 23:18:13.126 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:18:23.146 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:18:23 + → module: 'TaskScheduler' +2025-10-23 23:18:23.146 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:18:33.171 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:18:33 + → module: 'TaskScheduler' +2025-10-23 23:18:33.171 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:18:43.179 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:18:43 + → module: 'TaskScheduler' +2025-10-23 23:18:43.179 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:18:53.196 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:18:53 + → module: 'TaskScheduler' +2025-10-23 23:18:53.196 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:19:03.225 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:19:03 + → module: 'TaskScheduler' +2025-10-23 23:19:03.225 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:19:13.233 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:19:13 + → module: 'TaskScheduler' +2025-10-23 23:19:13.233 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:19:23.267 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:19:23 + → module: 'TaskScheduler' +2025-10-23 23:19:23.267 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:19:33.274 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:19:33 + → module: 'TaskScheduler' +2025-10-23 23:19:33.274 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:19:43.281 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:19:43 + → module: 'TaskScheduler' +2025-10-23 23:19:43.281 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:19:53.302 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:19:53 + → module: 'TaskScheduler' +2025-10-23 23:19:53.302 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:20:03.309 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:20:03 + → module: 'TaskScheduler' +2025-10-23 23:20:03.309 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:20:03.339 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:20:03.372 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 23:20:03.373 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:20:03.373 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 23:20:03.373 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 23:20:03.374 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 23:20:03.397 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 23:20:03.400 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 23:20:03.401 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 23:20:03.401 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 15:10:10 + → module: 'NewsAPIClient' +2025-10-23 23:20:03.402 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 15:10:10 + → module: 'NewsAPIClient' +2025-10-23 23:20:03.402 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 23:20:03.844 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:20:03.879 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:20:03.911 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:20:04.167 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:20:04.167 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 23:20:04.167 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.77秒 + → module: 'NewsAPIClient' +2025-10-23 23:20:04.167 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 23:20:04.169 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 23:20:04.170 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 23:20:04.171 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 23:20:04.174 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 15:10:10 + → module: 'NewsAPIClient' +2025-10-23 23:20:04.174 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 15:10:10 + → module: 'NewsAPIClient' +2025-10-23 23:20:04.174 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.80秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 23:20:04.197 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 23:20:04.197 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:20:13.375 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:20:13 + → module: 'TaskScheduler' +2025-10-23 23:20:13.375 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:20:23.385 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:20:23 + → module: 'TaskScheduler' +2025-10-23 23:20:23.385 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:20:33.411 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:20:33 + → module: 'TaskScheduler' +2025-10-23 23:20:33.411 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:20:43.442 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:20:43 + → module: 'TaskScheduler' +2025-10-23 23:20:43.442 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:20:53.450 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:20:53 + → module: 'TaskScheduler' +2025-10-23 23:20:53.450 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:21:03.457 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:21:03 + → module: 'TaskScheduler' +2025-10-23 23:21:03.458 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:21:13.465 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:21:13 + → module: 'TaskScheduler' +2025-10-23 23:21:13.465 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:21:23.472 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:21:23 + → module: 'TaskScheduler' +2025-10-23 23:21:23.472 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:21:33.503 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:21:33 + → module: 'TaskScheduler' +2025-10-23 23:21:33.503 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:21:43.511 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:21:43 + → module: 'TaskScheduler' +2025-10-23 23:21:43.511 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:21:53.518 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:21:53 + → module: 'TaskScheduler' +2025-10-23 23:21:53.518 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:22:03.525 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:22:03 + → module: 'TaskScheduler' +2025-10-23 23:22:03.525 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:22:13.555 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:22:13 + → module: 'TaskScheduler' +2025-10-23 23:22:13.555 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:22:23.588 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:22:23 + → module: 'TaskScheduler' +2025-10-23 23:22:23.588 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:22:33.611 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:22:33 + → module: 'TaskScheduler' +2025-10-23 23:22:33.611 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:22:43.619 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:22:43 + → module: 'TaskScheduler' +2025-10-23 23:22:43.619 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:22:53.627 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:22:53 + → module: 'TaskScheduler' +2025-10-23 23:22:53.627 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:23:03.653 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:23:03 + → module: 'TaskScheduler' +2025-10-23 23:23:03.653 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:23:13.664 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:23:13 + → module: 'TaskScheduler' +2025-10-23 23:23:13.664 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:23:23.672 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:23:23 + → module: 'TaskScheduler' +2025-10-23 23:23:23.672 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:23:33.697 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:23:33 + → module: 'TaskScheduler' +2025-10-23 23:23:33.697 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:23:43.706 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:23:43 + → module: 'TaskScheduler' +2025-10-23 23:23:43.706 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:23:53.716 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:23:53 + → module: 'TaskScheduler' +2025-10-23 23:23:53.716 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:24:03.742 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:24:03 + → module: 'TaskScheduler' +2025-10-23 23:24:03.742 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:24:13.753 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:24:13 + → module: 'TaskScheduler' +2025-10-23 23:24:13.753 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:24:23.761 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:24:23 + → module: 'TaskScheduler' +2025-10-23 23:24:23.761 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:24:33.770 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:24:33 + → module: 'TaskScheduler' +2025-10-23 23:24:33.770 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:24:43.777 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:24:43 + → module: 'TaskScheduler' +2025-10-23 23:24:43.777 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:24:53.786 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:24:53 + → module: 'TaskScheduler' +2025-10-23 23:24:53.786 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:25:03.794 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:25:03 + → module: 'TaskScheduler' +2025-10-23 23:25:03.794 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:25:03.801 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:25:03.844 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 23:25:03.844 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:25:03.844 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 23:25:03.844 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 23:25:03.845 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 23:25:03.848 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 23:25:03.851 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 23:25:03.851 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 23:25:03.852 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 15:10:10 + → module: 'NewsAPIClient' +2025-10-23 23:25:03.852 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 15:10:10 + → module: 'NewsAPIClient' +2025-10-23 23:25:03.852 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 23:25:04.258 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:25:04.283 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:25:04.296 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:25:04.612 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:25:04.614 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 23:25:04.614 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.76秒 + → module: 'NewsAPIClient' +2025-10-23 23:25:04.614 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 23:25:04.616 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 23:25:04.617 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 23:25:04.618 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 23:25:04.619 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 15:10:10 + → module: 'NewsAPIClient' +2025-10-23 23:25:04.619 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 15:10:10 + → module: 'NewsAPIClient' +2025-10-23 23:25:04.619 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.78秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 23:25:04.642 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 23:25:04.642 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:25:13.846 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:25:13 + → module: 'TaskScheduler' +2025-10-23 23:25:13.847 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:25:23.855 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:25:23 + → module: 'TaskScheduler' +2025-10-23 23:25:23.855 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:25:33.864 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:25:33 + → module: 'TaskScheduler' +2025-10-23 23:25:33.864 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:25:43.881 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:25:43 + → module: 'TaskScheduler' +2025-10-23 23:25:43.881 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:25:53.888 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:25:53 + → module: 'TaskScheduler' +2025-10-23 23:25:53.889 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:26:03.898 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:26:03 + → module: 'TaskScheduler' +2025-10-23 23:26:03.898 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:26:13.908 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:26:13 + → module: 'TaskScheduler' +2025-10-23 23:26:13.908 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:26:23.941 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:26:23 + → module: 'TaskScheduler' +2025-10-23 23:26:23.941 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:26:33.949 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:26:33 + → module: 'TaskScheduler' +2025-10-23 23:26:33.949 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:26:43.957 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:26:43 + → module: 'TaskScheduler' +2025-10-23 23:26:43.957 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:26:53.983 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:26:53 + → module: 'TaskScheduler' +2025-10-23 23:26:53.983 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:27:04.002 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:27:04 + → module: 'TaskScheduler' +2025-10-23 23:27:04.002 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:27:14.026 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:27:14 + → module: 'TaskScheduler' +2025-10-23 23:27:14.026 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:27:24.034 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:27:24 + → module: 'TaskScheduler' +2025-10-23 23:27:24.034 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:27:34.042 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:27:34 + → module: 'TaskScheduler' +2025-10-23 23:27:34.042 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:27:44.068 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:27:44 + → module: 'TaskScheduler' +2025-10-23 23:27:44.068 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:27:54.076 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:27:54 + → module: 'TaskScheduler' +2025-10-23 23:27:54.076 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:28:04.085 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:28:04 + → module: 'TaskScheduler' +2025-10-23 23:28:04.085 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:28:14.113 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:28:14 + → module: 'TaskScheduler' +2025-10-23 23:28:14.113 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:28:24.121 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:28:24 + → module: 'TaskScheduler' +2025-10-23 23:28:24.121 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:28:34.140 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:28:34 + → module: 'TaskScheduler' +2025-10-23 23:28:34.140 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:28:44.148 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:28:44 + → module: 'TaskScheduler' +2025-10-23 23:28:44.148 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:28:54.173 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:28:54 + → module: 'TaskScheduler' +2025-10-23 23:28:54.173 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:29:04.205 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:29:04 + → module: 'TaskScheduler' +2025-10-23 23:29:04.205 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:29:14.213 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:29:14 + → module: 'TaskScheduler' +2025-10-23 23:29:14.213 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:29:24.223 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:29:24 + → module: 'TaskScheduler' +2025-10-23 23:29:24.223 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:29:34.253 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:29:34 + → module: 'TaskScheduler' +2025-10-23 23:29:34.254 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:29:44.261 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:29:44 + → module: 'TaskScheduler' +2025-10-23 23:29:44.261 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:29:54.288 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:29:54 + → module: 'TaskScheduler' +2025-10-23 23:29:54.288 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:30:04.308 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:30:04 + → module: 'TaskScheduler' +2025-10-23 23:30:04.308 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:30:04.317 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:30:04.325 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 23:30:04.326 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:30:04.326 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 23:30:04.326 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 23:30:04.326 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 23:30:04.330 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 23:30:04.346 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 23:30:04.346 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 23:30:04.347 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 15:10:10 + → module: 'NewsAPIClient' +2025-10-23 23:30:04.347 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 15:10:10 + → module: 'NewsAPIClient' +2025-10-23 23:30:04.347 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 23:30:04.770 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:30:04.783 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:30:04.807 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:30:05.078 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:30:05.079 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 23:30:05.080 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.73秒 + → module: 'NewsAPIClient' +2025-10-23 23:30:05.080 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 23:30:05.081 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 23:30:05.081 | DEBUG | rss_subscriptions:235 - 处理条目 1: 两岸学人对谈台湾光复:以史为鉴,共推民族复兴 + → module: 'NewsAPIClient' +2025-10-23 23:30:05.101 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 23:30:05.104 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 23:30:05.105 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 23:30:05.112 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 23:30:05.114 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 23:30:05.114 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 23:30:05.115 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 23:30:05.116 | DEBUG | rss_subscriptions:235 - 处理条目 1: 两岸学人对谈台湾光复:以史为鉴,共推民族复兴 + → module: 'NewsAPIClient' +2025-10-23 23:30:05.133 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 23:30:05.135 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 23:30:05.136 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 23:30:05.140 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 0 + → error_message: "Duplicate entry '两岸学人对谈台湾光复:以史为鉴,共推民族复å' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '两岸学人对谈台湾光复:以史为鉴,共推民族复兴...', '文章链接': 'http://www.chinanews.com/gn/2025/10-23/10503546.shtml...', '文章摘要': '中新社北京10月23日电 (记者 陈建新)今年是抗战胜利80周年,也是台湾光复80周年。光复对台湾现当代历史有何重要影响?历史如何启示未来两岸关系发展?23日在北京... +2025-10-23 23:30:05.141 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 0 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-23 23:30:05.142 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '两岸学人对谈台湾光复:以史为鉴,共推民族复å' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '两岸学人对谈台湾光复:以史为鉴,共推民族复å' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '两岸学人对... +2025-10-23 23:30:05.143 | INFO | rss_subscriptions:259 - 成功写入 0/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 23:30:05.143 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 15:23:29 + → module: 'NewsAPIClient' +2025-10-23 23:30:05.143 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 15:23:29 + → module: 'NewsAPIClient' +2025-10-23 23:30:05.145 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.82秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 23:30:05.152 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 23:30:05.153 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:30:14.327 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:30:14 + → module: 'TaskScheduler' +2025-10-23 23:30:14.328 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:30:24.356 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:30:24 + → module: 'TaskScheduler' +2025-10-23 23:30:24.356 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:30:34.364 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:30:34 + → module: 'TaskScheduler' +2025-10-23 23:30:34.364 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:30:44.372 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:30:44 + → module: 'TaskScheduler' +2025-10-23 23:30:44.372 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:30:54.379 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:30:54 + → module: 'TaskScheduler' +2025-10-23 23:30:54.379 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:31:04.397 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:31:04 + → module: 'TaskScheduler' +2025-10-23 23:31:04.397 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:31:14.405 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:31:14 + → module: 'TaskScheduler' +2025-10-23 23:31:14.405 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:31:24.412 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:31:24 + → module: 'TaskScheduler' +2025-10-23 23:31:24.412 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:31:34.420 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:31:34 + → module: 'TaskScheduler' +2025-10-23 23:31:34.421 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:31:44.429 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:31:44 + → module: 'TaskScheduler' +2025-10-23 23:31:44.429 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:31:54.439 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:31:54 + → module: 'TaskScheduler' +2025-10-23 23:31:54.439 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:32:04.446 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:32:04 + → module: 'TaskScheduler' +2025-10-23 23:32:04.446 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:32:14.454 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:32:14 + → module: 'TaskScheduler' +2025-10-23 23:32:14.454 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:32:24.481 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:32:24 + → module: 'TaskScheduler' +2025-10-23 23:32:24.481 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:32:34.509 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:32:34 + → module: 'TaskScheduler' +2025-10-23 23:32:34.509 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:32:44.517 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:32:44 + → module: 'TaskScheduler' +2025-10-23 23:32:44.517 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:32:54.527 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:32:54 + → module: 'TaskScheduler' +2025-10-23 23:32:54.527 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:33:04.536 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:33:04 + → module: 'TaskScheduler' +2025-10-23 23:33:04.536 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:33:14.543 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:33:14 + → module: 'TaskScheduler' +2025-10-23 23:33:14.543 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:33:24.550 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:33:24 + → module: 'TaskScheduler' +2025-10-23 23:33:24.551 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:33:34.560 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:33:34 + → module: 'TaskScheduler' +2025-10-23 23:33:34.560 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:33:44.590 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:33:44 + → module: 'TaskScheduler' +2025-10-23 23:33:44.590 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:33:54.598 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:33:54 + → module: 'TaskScheduler' +2025-10-23 23:33:54.598 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:34:04.606 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:34:04 + → module: 'TaskScheduler' +2025-10-23 23:34:04.606 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:34:14.614 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:34:14 + → module: 'TaskScheduler' +2025-10-23 23:34:14.614 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:34:24.642 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:34:24 + → module: 'TaskScheduler' +2025-10-23 23:34:24.643 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:34:34.651 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:34:34 + → module: 'TaskScheduler' +2025-10-23 23:34:34.651 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:34:44.659 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:34:44 + → module: 'TaskScheduler' +2025-10-23 23:34:44.660 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:34:54.668 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:34:54 + → module: 'TaskScheduler' +2025-10-23 23:34:54.668 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:35:04.676 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:35:04 + → module: 'TaskScheduler' +2025-10-23 23:35:04.676 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:35:04.685 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:35:04.706 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 23:35:04.707 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:35:04.707 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 23:35:04.707 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 23:35:04.708 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 23:35:04.712 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 23:35:04.737 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 23:35:04.737 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 23:35:04.738 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 15:23:29 + → module: 'NewsAPIClient' +2025-10-23 23:35:04.738 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 15:23:29 + → module: 'NewsAPIClient' +2025-10-23 23:35:04.738 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 23:35:05.172 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:35:05.194 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:35:05.206 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:35:05.506 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:35:05.509 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 23:35:05.509 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.77秒 + → module: 'NewsAPIClient' +2025-10-23 23:35:05.509 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 23:35:05.511 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 23:35:05.512 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 23:35:05.513 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 23:35:05.515 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 15:23:29 + → module: 'NewsAPIClient' +2025-10-23 23:35:05.515 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 15:23:29 + → module: 'NewsAPIClient' +2025-10-23 23:35:05.516 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.81秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 23:35:05.561 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 23:35:05.562 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:35:14.709 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:35:14 + → module: 'TaskScheduler' +2025-10-23 23:35:14.709 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:35:24.719 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:35:24 + → module: 'TaskScheduler' +2025-10-23 23:35:24.719 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:35:34.737 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:35:34 + → module: 'TaskScheduler' +2025-10-23 23:35:34.738 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:35:44.746 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:35:44 + → module: 'TaskScheduler' +2025-10-23 23:35:44.746 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:35:54.754 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:35:54 + → module: 'TaskScheduler' +2025-10-23 23:35:54.754 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:36:04.774 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:36:04 + → module: 'TaskScheduler' +2025-10-23 23:36:04.774 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:36:14.782 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:36:14 + → module: 'TaskScheduler' +2025-10-23 23:36:14.782 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:36:24.801 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:36:24 + → module: 'TaskScheduler' +2025-10-23 23:36:24.801 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:36:34.809 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:36:34 + → module: 'TaskScheduler' +2025-10-23 23:36:34.809 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:36:44.840 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:36:44 + → module: 'TaskScheduler' +2025-10-23 23:36:44.840 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:36:54.849 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:36:54 + → module: 'TaskScheduler' +2025-10-23 23:36:54.849 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:37:04.857 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:37:04 + → module: 'TaskScheduler' +2025-10-23 23:37:04.857 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:37:14.865 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:37:14 + → module: 'TaskScheduler' +2025-10-23 23:37:14.865 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:37:24.875 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:37:24 + → module: 'TaskScheduler' +2025-10-23 23:37:24.875 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:37:34.895 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:37:34 + → module: 'TaskScheduler' +2025-10-23 23:37:34.895 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:37:44.903 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:37:44 + → module: 'TaskScheduler' +2025-10-23 23:37:44.903 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:37:54.934 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:37:54 + → module: 'TaskScheduler' +2025-10-23 23:37:54.934 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:38:04.941 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:38:04 + → module: 'TaskScheduler' +2025-10-23 23:38:04.941 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:38:14.952 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:38:14 + → module: 'TaskScheduler' +2025-10-23 23:38:14.952 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:38:24.982 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:38:24 + → module: 'TaskScheduler' +2025-10-23 23:38:24.982 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:38:34.990 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:38:34 + → module: 'TaskScheduler' +2025-10-23 23:38:34.990 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:38:45.014 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:38:45 + → module: 'TaskScheduler' +2025-10-23 23:38:45.014 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:38:55.021 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:38:55 + → module: 'TaskScheduler' +2025-10-23 23:38:55.021 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:39:05.034 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:39:05 + → module: 'TaskScheduler' +2025-10-23 23:39:05.034 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:39:15.060 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:39:15 + → module: 'TaskScheduler' +2025-10-23 23:39:15.060 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:39:25.068 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:39:25 + → module: 'TaskScheduler' +2025-10-23 23:39:25.068 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:39:35.076 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:39:35 + → module: 'TaskScheduler' +2025-10-23 23:39:35.076 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:39:45.088 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:39:45 + → module: 'TaskScheduler' +2025-10-23 23:39:45.088 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:39:55.096 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:39:55 + → module: 'TaskScheduler' +2025-10-23 23:39:55.096 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:40:05.116 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:40:05 + → module: 'TaskScheduler' +2025-10-23 23:40:05.116 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:40:05.149 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:40:05.184 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 23:40:05.184 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:40:05.184 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 23:40:05.184 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 23:40:05.186 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 23:40:05.205 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 23:40:05.222 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 23:40:05.222 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 23:40:05.223 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 15:23:29 + → module: 'NewsAPIClient' +2025-10-23 23:40:05.223 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 15:23:29 + → module: 'NewsAPIClient' +2025-10-23 23:40:05.223 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 23:40:05.632 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:40:05.674 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:40:05.693 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:40:05.959 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:40:05.961 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 23:40:05.962 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.74秒 + → module: 'NewsAPIClient' +2025-10-23 23:40:05.962 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 23:40:05.963 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 23:40:05.964 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 23:40:05.966 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 23:40:05.969 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 15:23:29 + → module: 'NewsAPIClient' +2025-10-23 23:40:05.969 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 15:23:29 + → module: 'NewsAPIClient' +2025-10-23 23:40:05.969 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.78秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 23:40:05.978 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 23:40:05.979 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:40:15.186 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:40:15 + → module: 'TaskScheduler' +2025-10-23 23:40:15.186 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:40:25.195 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:40:25 + → module: 'TaskScheduler' +2025-10-23 23:40:25.195 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:40:35.202 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:40:35 + → module: 'TaskScheduler' +2025-10-23 23:40:35.202 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:40:45.210 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:40:45 + → module: 'TaskScheduler' +2025-10-23 23:40:45.210 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:40:55.230 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:40:55 + → module: 'TaskScheduler' +2025-10-23 23:40:55.230 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:41:05.249 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:41:05 + → module: 'TaskScheduler' +2025-10-23 23:41:05.249 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:41:15.256 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:41:15 + → module: 'TaskScheduler' +2025-10-23 23:41:15.256 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:41:25.264 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:41:25 + → module: 'TaskScheduler' +2025-10-23 23:41:25.264 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:41:35.272 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:41:35 + → module: 'TaskScheduler' +2025-10-23 23:41:35.272 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:41:45.298 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:41:45 + → module: 'TaskScheduler' +2025-10-23 23:41:45.298 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:41:55.306 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:41:55 + → module: 'TaskScheduler' +2025-10-23 23:41:55.306 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:42:05.326 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:42:05 + → module: 'TaskScheduler' +2025-10-23 23:42:05.326 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:42:15.334 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:42:15 + → module: 'TaskScheduler' +2025-10-23 23:42:15.334 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:42:25.345 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:42:25 + → module: 'TaskScheduler' +2025-10-23 23:42:25.345 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:42:35.352 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:42:35 + → module: 'TaskScheduler' +2025-10-23 23:42:35.352 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:42:45.371 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:42:45 + → module: 'TaskScheduler' +2025-10-23 23:42:45.371 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:42:55.382 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:42:55 + → module: 'TaskScheduler' +2025-10-23 23:42:55.382 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:43:05.390 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:43:05 + → module: 'TaskScheduler' +2025-10-23 23:43:05.390 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:43:15.399 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:43:15 + → module: 'TaskScheduler' +2025-10-23 23:43:15.399 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:43:25.408 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:43:25 + → module: 'TaskScheduler' +2025-10-23 23:43:25.408 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:43:35.416 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:43:35 + → module: 'TaskScheduler' +2025-10-23 23:43:35.416 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:43:45.447 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:43:45 + → module: 'TaskScheduler' +2025-10-23 23:43:45.447 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:43:55.457 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:43:55 + → module: 'TaskScheduler' +2025-10-23 23:43:55.457 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:44:05.465 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:44:05 + → module: 'TaskScheduler' +2025-10-23 23:44:05.465 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:44:15.472 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:44:15 + → module: 'TaskScheduler' +2025-10-23 23:44:15.472 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:44:25.481 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:44:25 + → module: 'TaskScheduler' +2025-10-23 23:44:25.481 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:44:35.488 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:44:35 + → module: 'TaskScheduler' +2025-10-23 23:44:35.488 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:44:45.497 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:44:45 + → module: 'TaskScheduler' +2025-10-23 23:44:45.497 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:44:55.504 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:44:55 + → module: 'TaskScheduler' +2025-10-23 23:44:55.505 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:45:05.527 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:45:05 + → module: 'TaskScheduler' +2025-10-23 23:45:05.528 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:45:05.555 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:45:05.577 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 23:45:05.577 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:45:05.577 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 23:45:05.578 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 23:45:05.578 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 23:45:05.582 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 23:45:05.610 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 23:45:05.610 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 23:45:05.611 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 15:23:29 + → module: 'NewsAPIClient' +2025-10-23 23:45:05.611 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 15:23:29 + → module: 'NewsAPIClient' +2025-10-23 23:45:05.611 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 23:45:06.032 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:45:06.058 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:45:06.068 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:45:06.366 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:45:06.368 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 23:45:06.369 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.76秒 + → module: 'NewsAPIClient' +2025-10-23 23:45:06.369 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 23:45:06.370 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 23:45:06.372 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 23:45:06.372 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 23:45:06.373 | DEBUG | rss_subscriptions:235 - 处理条目 1: 俄车里雅宾斯克州爆炸事故死亡人数升至12人 + → module: 'NewsAPIClient' +2025-10-23 23:45:06.388 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-23 23:45:06.390 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-23 23:45:06.391 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-23 23:45:06.422 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-23 23:45:06.422 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-23 23:45:06.423 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 15:38:44 + → module: 'NewsAPIClient' +2025-10-23 23:45:06.424 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 15:38:44 + → module: 'NewsAPIClient' +2025-10-23 23:45:06.424 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.85秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 23:45:06.432 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 23:45:06.433 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:45:15.579 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:45:15 + → module: 'TaskScheduler' +2025-10-23 23:45:15.579 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:45:25.603 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:45:25 + → module: 'TaskScheduler' +2025-10-23 23:45:25.603 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:45:35.614 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:45:35 + → module: 'TaskScheduler' +2025-10-23 23:45:35.614 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:45:45.621 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:45:45 + → module: 'TaskScheduler' +2025-10-23 23:45:45.621 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:45:55.632 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:45:55 + → module: 'TaskScheduler' +2025-10-23 23:45:55.632 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:46:05.639 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:46:05 + → module: 'TaskScheduler' +2025-10-23 23:46:05.639 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:46:15.648 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:46:15 + → module: 'TaskScheduler' +2025-10-23 23:46:15.648 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:46:25.682 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:46:25 + → module: 'TaskScheduler' +2025-10-23 23:46:25.682 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:46:35.710 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:46:35 + → module: 'TaskScheduler' +2025-10-23 23:46:35.710 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:46:45.718 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:46:45 + → module: 'TaskScheduler' +2025-10-23 23:46:45.718 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:46:55.726 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:46:55 + → module: 'TaskScheduler' +2025-10-23 23:46:55.726 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:47:05.748 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:47:05 + → module: 'TaskScheduler' +2025-10-23 23:47:05.748 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:47:15.779 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:47:15 + → module: 'TaskScheduler' +2025-10-23 23:47:15.779 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:47:25.800 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:47:25 + → module: 'TaskScheduler' +2025-10-23 23:47:25.800 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:47:35.824 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:47:35 + → module: 'TaskScheduler' +2025-10-23 23:47:35.824 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:47:45.831 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:47:45 + → module: 'TaskScheduler' +2025-10-23 23:47:45.831 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:47:55.864 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:47:55 + → module: 'TaskScheduler' +2025-10-23 23:47:55.864 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:48:05.889 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:48:05 + → module: 'TaskScheduler' +2025-10-23 23:48:05.889 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:48:15.914 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:48:15 + → module: 'TaskScheduler' +2025-10-23 23:48:15.914 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:48:25.923 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:48:25 + → module: 'TaskScheduler' +2025-10-23 23:48:25.923 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:48:35.945 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:48:35 + → module: 'TaskScheduler' +2025-10-23 23:48:35.945 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:48:45.977 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:48:45 + → module: 'TaskScheduler' +2025-10-23 23:48:45.977 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:48:55.984 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:48:55 + → module: 'TaskScheduler' +2025-10-23 23:48:55.984 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:49:05.995 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:49:05 + → module: 'TaskScheduler' +2025-10-23 23:49:05.995 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:49:16.006 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:49:16 + → module: 'TaskScheduler' +2025-10-23 23:49:16.006 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:49:26.035 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:49:26 + → module: 'TaskScheduler' +2025-10-23 23:49:26.035 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:49:36.046 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:49:36 + → module: 'TaskScheduler' +2025-10-23 23:49:36.046 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:49:46.074 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:49:46 + → module: 'TaskScheduler' +2025-10-23 23:49:46.074 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:49:56.086 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:49:56 + → module: 'TaskScheduler' +2025-10-23 23:49:56.086 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:50:06.094 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:50:06 + → module: 'TaskScheduler' +2025-10-23 23:50:06.094 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:50:06.103 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:50:06.125 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 23:50:06.125 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:50:06.126 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 23:50:06.126 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 23:50:06.126 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 23:50:06.130 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 23:50:06.135 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 23:50:06.136 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 23:50:06.136 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 15:38:44 + → module: 'NewsAPIClient' +2025-10-23 23:50:06.137 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 15:38:44 + → module: 'NewsAPIClient' +2025-10-23 23:50:06.137 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 23:50:06.534 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:50:06.544 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:50:06.600 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:50:06.838 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:50:06.839 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 23:50:06.840 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.70秒 + → module: 'NewsAPIClient' +2025-10-23 23:50:06.840 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 23:50:06.841 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 23:50:06.842 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 23:50:06.844 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 23:50:06.844 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 15:38:44 + → module: 'NewsAPIClient' +2025-10-23 23:50:06.844 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 15:38:44 + → module: 'NewsAPIClient' +2025-10-23 23:50:06.846 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.72秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 23:50:06.887 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 23:50:06.888 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:50:16.127 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:50:16 + → module: 'TaskScheduler' +2025-10-23 23:50:16.127 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:50:26.160 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:50:26 + → module: 'TaskScheduler' +2025-10-23 23:50:26.160 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:50:36.168 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:50:36 + → module: 'TaskScheduler' +2025-10-23 23:50:36.168 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:50:46.176 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:50:46 + → module: 'TaskScheduler' +2025-10-23 23:50:46.176 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:50:56.195 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:50:56 + → module: 'TaskScheduler' +2025-10-23 23:50:56.195 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:51:06.202 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:51:06 + → module: 'TaskScheduler' +2025-10-23 23:51:06.202 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:51:16.235 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:51:16 + → module: 'TaskScheduler' +2025-10-23 23:51:16.236 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:51:26.243 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:51:26 + → module: 'TaskScheduler' +2025-10-23 23:51:26.243 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:51:36.253 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:51:36 + → module: 'TaskScheduler' +2025-10-23 23:51:36.253 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:51:46.260 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:51:46 + → module: 'TaskScheduler' +2025-10-23 23:51:46.260 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:51:56.281 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:51:56 + → module: 'TaskScheduler' +2025-10-23 23:51:56.281 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:52:06.302 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:52:06 + → module: 'TaskScheduler' +2025-10-23 23:52:06.302 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:52:16.332 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:52:16 + → module: 'TaskScheduler' +2025-10-23 23:52:16.332 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:52:26.339 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:52:26 + → module: 'TaskScheduler' +2025-10-23 23:52:26.339 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:52:36.347 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:52:36 + → module: 'TaskScheduler' +2025-10-23 23:52:36.347 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:52:46.381 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:52:46 + → module: 'TaskScheduler' +2025-10-23 23:52:46.382 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:52:56.389 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:52:56 + → module: 'TaskScheduler' +2025-10-23 23:52:56.389 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:53:06.410 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:53:06 + → module: 'TaskScheduler' +2025-10-23 23:53:06.410 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:53:16.432 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:53:16 + → module: 'TaskScheduler' +2025-10-23 23:53:16.432 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:53:26.453 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:53:26 + → module: 'TaskScheduler' +2025-10-23 23:53:26.453 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:53:36.461 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:53:36 + → module: 'TaskScheduler' +2025-10-23 23:53:36.461 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:53:46.488 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:53:46 + → module: 'TaskScheduler' +2025-10-23 23:53:46.488 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:53:56.495 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:53:56 + → module: 'TaskScheduler' +2025-10-23 23:53:56.495 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:54:06.522 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:54:06 + → module: 'TaskScheduler' +2025-10-23 23:54:06.522 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:54:16.529 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:54:16 + → module: 'TaskScheduler' +2025-10-23 23:54:16.529 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:54:26.538 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:54:26 + → module: 'TaskScheduler' +2025-10-23 23:54:26.538 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:54:36.564 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:54:36 + → module: 'TaskScheduler' +2025-10-23 23:54:36.564 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:54:46.589 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:54:46 + → module: 'TaskScheduler' +2025-10-23 23:54:46.589 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:54:56.618 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:54:56 + → module: 'TaskScheduler' +2025-10-23 23:54:56.618 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:55:06.627 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:55:06 + → module: 'TaskScheduler' +2025-10-23 23:55:06.627 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:55:06.633 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:55:06.671 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 23:55:06.671 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:55:06.672 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 23:55:06.672 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-23 23:55:06.672 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-23 23:55:06.676 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-23 23:55:06.700 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-23 23:55:06.700 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-23 23:55:06.701 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 15:38:44 + → module: 'NewsAPIClient' +2025-10-23 23:55:06.701 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 15:38:44 + → module: 'NewsAPIClient' +2025-10-23 23:55:06.702 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-23 23:55:07.134 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:55:07.147 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:55:07.213 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:55:07.496 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-23 23:55:07.498 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-23 23:55:07.498 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.80秒 + → module: 'NewsAPIClient' +2025-10-23 23:55:07.498 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-23 23:55:07.499 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-23 23:55:07.501 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-23 23:55:07.502 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-23 23:55:07.504 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 15:38:44 + → module: 'NewsAPIClient' +2025-10-23 23:55:07.504 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 15:38:44 + → module: 'NewsAPIClient' +2025-10-23 23:55:07.504 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.83秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-23 23:55:07.521 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-23 23:55:07.521 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-23 23:55:16.673 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:55:16 + → module: 'TaskScheduler' +2025-10-23 23:55:16.674 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:55:26.697 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:55:26 + → module: 'TaskScheduler' +2025-10-23 23:55:26.697 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:55:36.704 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:55:36 + → module: 'TaskScheduler' +2025-10-23 23:55:36.704 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:55:46.713 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:55:46 + → module: 'TaskScheduler' +2025-10-23 23:55:46.713 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:55:56.720 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:55:56 + → module: 'TaskScheduler' +2025-10-23 23:55:56.720 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:56:06.728 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:56:06 + → module: 'TaskScheduler' +2025-10-23 23:56:06.728 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:56:16.735 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:56:16 + → module: 'TaskScheduler' +2025-10-23 23:56:16.736 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:56:26.744 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:56:26 + → module: 'TaskScheduler' +2025-10-23 23:56:26.744 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:56:36.753 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:56:36 + → module: 'TaskScheduler' +2025-10-23 23:56:36.753 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:56:46.760 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:56:46 + → module: 'TaskScheduler' +2025-10-23 23:56:46.760 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:56:56.789 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:56:56 + → module: 'TaskScheduler' +2025-10-23 23:56:56.789 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:57:06.817 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:57:06 + → module: 'TaskScheduler' +2025-10-23 23:57:06.817 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:57:16.844 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:57:16 + → module: 'TaskScheduler' +2025-10-23 23:57:16.844 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:57:26.852 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:57:26 + → module: 'TaskScheduler' +2025-10-23 23:57:26.853 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:57:36.860 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:57:36 + → module: 'TaskScheduler' +2025-10-23 23:57:36.860 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:57:46.868 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:57:46 + → module: 'TaskScheduler' +2025-10-23 23:57:46.868 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:57:56.897 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:57:56 + → module: 'TaskScheduler' +2025-10-23 23:57:56.897 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:58:06.926 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:58:06 + → module: 'TaskScheduler' +2025-10-23 23:58:06.926 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:58:16.958 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:58:16 + → module: 'TaskScheduler' +2025-10-23 23:58:16.958 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:58:26.984 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:58:26 + → module: 'TaskScheduler' +2025-10-23 23:58:26.985 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:58:36.994 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:58:36 + → module: 'TaskScheduler' +2025-10-23 23:58:36.994 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:58:47.017 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:58:47 + → module: 'TaskScheduler' +2025-10-23 23:58:47.017 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:58:57.039 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:58:57 + → module: 'TaskScheduler' +2025-10-23 23:58:57.040 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:59:07.048 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:59:07 + → module: 'TaskScheduler' +2025-10-23 23:59:07.048 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:59:17.056 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:59:17 + → module: 'TaskScheduler' +2025-10-23 23:59:17.056 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:59:27.064 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:59:27 + → module: 'TaskScheduler' +2025-10-23 23:59:27.064 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:59:37.072 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:59:37 + → module: 'TaskScheduler' +2025-10-23 23:59:37.073 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:59:47.080 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:59:47 + → module: 'TaskScheduler' +2025-10-23 23:59:47.080 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-23 23:59:57.089 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-23 23:59:57 + → module: 'TaskScheduler' +2025-10-23 23:59:57.089 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:00:07.097 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:00:07 + → module: 'TaskScheduler' +2025-10-24 00:00:07.097 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:00:07.105 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:00:07.129 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 00:00:07.129 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:00:07.130 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 00:00:07.130 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 00:00:07.130 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 00:00:07.156 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 00:00:07.173 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 00:00:07.174 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 00:00:07.174 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 15:38:44 + → module: 'NewsAPIClient' +2025-10-24 00:00:07.175 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 15:38:44 + → module: 'NewsAPIClient' +2025-10-24 00:00:07.175 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 00:00:07.681 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:00:07.694 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:00:07.736 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:00:08.020 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:00:08.021 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 00:00:08.022 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.85秒 + → module: 'NewsAPIClient' +2025-10-24 00:00:08.022 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 00:00:08.023 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 00:00:08.024 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 00:00:08.024 | DEBUG | rss_subscriptions:235 - 处理条目 1: 中国成功发射通信技术试验卫星二十号 + → module: 'NewsAPIClient' +2025-10-24 00:00:08.027 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 00:00:08.029 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 00:00:08.030 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 00:00:08.050 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 00:00:08.052 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 00:00:08.052 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 00:00:08.054 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 15:56:51 + → module: 'NewsAPIClient' +2025-10-24 00:00:08.054 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 15:56:51 + → module: 'NewsAPIClient' +2025-10-24 00:00:08.054 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.92秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 00:00:08.065 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 00:00:08.065 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:00:17.131 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:00:17 + → module: 'TaskScheduler' +2025-10-24 00:00:17.131 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:00:27.138 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:00:27 + → module: 'TaskScheduler' +2025-10-24 00:00:27.138 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:00:37.146 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:00:37 + → module: 'TaskScheduler' +2025-10-24 00:00:37.146 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:00:47.170 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:00:47 + → module: 'TaskScheduler' +2025-10-24 00:00:47.170 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:00:57.178 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:00:57 + → module: 'TaskScheduler' +2025-10-24 00:00:57.178 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:01:07.186 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:01:07 + → module: 'TaskScheduler' +2025-10-24 00:01:07.186 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:01:17.194 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:01:17 + → module: 'TaskScheduler' +2025-10-24 00:01:17.194 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:01:27.206 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:01:27 + → module: 'TaskScheduler' +2025-10-24 00:01:27.206 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:01:37.214 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:01:37 + → module: 'TaskScheduler' +2025-10-24 00:01:37.214 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:01:47.239 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:01:47 + → module: 'TaskScheduler' +2025-10-24 00:01:47.239 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:01:57.247 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:01:57 + → module: 'TaskScheduler' +2025-10-24 00:01:57.247 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:02:07.255 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:02:07 + → module: 'TaskScheduler' +2025-10-24 00:02:07.255 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:02:17.262 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:02:17 + → module: 'TaskScheduler' +2025-10-24 00:02:17.262 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:02:27.289 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:02:27 + → module: 'TaskScheduler' +2025-10-24 00:02:27.289 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:02:37.309 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:02:37 + → module: 'TaskScheduler' +2025-10-24 00:02:37.309 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:02:47.318 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:02:47 + → module: 'TaskScheduler' +2025-10-24 00:02:47.318 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:02:57.326 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:02:57 + → module: 'TaskScheduler' +2025-10-24 00:02:57.326 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:03:07.334 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:03:07 + → module: 'TaskScheduler' +2025-10-24 00:03:07.334 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:03:17.364 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:03:17 + → module: 'TaskScheduler' +2025-10-24 00:03:17.364 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:03:27.374 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:03:27 + → module: 'TaskScheduler' +2025-10-24 00:03:27.374 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:03:37.383 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:03:37 + → module: 'TaskScheduler' +2025-10-24 00:03:37.383 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:03:47.405 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:03:47 + → module: 'TaskScheduler' +2025-10-24 00:03:47.405 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:03:57.416 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:03:57 + → module: 'TaskScheduler' +2025-10-24 00:03:57.416 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:04:07.441 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:04:07 + → module: 'TaskScheduler' +2025-10-24 00:04:07.441 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:04:17.449 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:04:17 + → module: 'TaskScheduler' +2025-10-24 00:04:17.449 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:04:27.481 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:04:27 + → module: 'TaskScheduler' +2025-10-24 00:04:27.481 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:04:37.489 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:04:37 + → module: 'TaskScheduler' +2025-10-24 00:04:37.489 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:04:47.498 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:04:47 + → module: 'TaskScheduler' +2025-10-24 00:04:47.498 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:04:57.518 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:04:57 + → module: 'TaskScheduler' +2025-10-24 00:04:57.518 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:05:07.525 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:05:07 + → module: 'TaskScheduler' +2025-10-24 00:05:07.525 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:05:07.539 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:05:07.549 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 00:05:07.550 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:05:07.550 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 00:05:07.551 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 00:05:07.552 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 00:05:07.557 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 00:05:07.563 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 00:05:07.564 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 00:05:07.565 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 15:56:51 + → module: 'NewsAPIClient' +2025-10-24 00:05:07.565 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 15:56:51 + → module: 'NewsAPIClient' +2025-10-24 00:05:07.566 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 00:05:08.018 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:05:08.028 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:05:08.081 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:05:08.344 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:05:08.347 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 00:05:08.347 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.78秒 + → module: 'NewsAPIClient' +2025-10-24 00:05:08.347 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 00:05:08.348 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 00:05:08.349 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 00:05:08.350 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 00:05:08.354 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 15:56:51 + → module: 'NewsAPIClient' +2025-10-24 00:05:08.354 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 15:56:51 + → module: 'NewsAPIClient' +2025-10-24 00:05:08.355 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.80秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 00:05:08.363 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 00:05:08.364 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:05:17.553 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:05:17 + → module: 'TaskScheduler' +2025-10-24 00:05:17.553 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:05:27.576 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:05:27 + → module: 'TaskScheduler' +2025-10-24 00:05:27.576 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:05:37.584 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:05:37 + → module: 'TaskScheduler' +2025-10-24 00:05:37.584 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:05:47.592 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:05:47 + → module: 'TaskScheduler' +2025-10-24 00:05:47.592 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:05:57.600 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:05:57 + → module: 'TaskScheduler' +2025-10-24 00:05:57.600 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:06:07.633 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:06:07 + → module: 'TaskScheduler' +2025-10-24 00:06:07.633 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:06:17.643 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:06:17 + → module: 'TaskScheduler' +2025-10-24 00:06:17.643 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:06:27.662 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:06:27 + → module: 'TaskScheduler' +2025-10-24 00:06:27.662 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:06:37.688 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:06:37 + → module: 'TaskScheduler' +2025-10-24 00:06:37.689 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:06:47.713 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:06:47 + → module: 'TaskScheduler' +2025-10-24 00:06:47.714 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:06:57.735 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:06:57 + → module: 'TaskScheduler' +2025-10-24 00:06:57.736 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:07:07.745 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:07:07 + → module: 'TaskScheduler' +2025-10-24 00:07:07.745 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:07:17.777 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:07:17 + → module: 'TaskScheduler' +2025-10-24 00:07:17.777 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:07:27.801 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:07:27 + → module: 'TaskScheduler' +2025-10-24 00:07:27.801 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:07:37.832 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:07:37 + → module: 'TaskScheduler' +2025-10-24 00:07:37.832 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:07:47.841 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:07:47 + → module: 'TaskScheduler' +2025-10-24 00:07:47.841 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:07:57.866 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:07:57 + → module: 'TaskScheduler' +2025-10-24 00:07:57.866 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:08:07.895 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:08:07 + → module: 'TaskScheduler' +2025-10-24 00:08:07.895 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:08:17.918 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:08:17 + → module: 'TaskScheduler' +2025-10-24 00:08:17.918 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:08:17.926 | INFO | main:87 - 小时任务统计 + → module: 'Main' + → 总任务数: 12 + → 成功: 12 + → 失败: 0 +2025-10-24 00:08:27.927 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:08:27 + → module: 'TaskScheduler' +2025-10-24 00:08:27.927 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:08:37.958 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:08:37 + → module: 'TaskScheduler' +2025-10-24 00:08:37.958 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:08:47.984 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:08:47 + → module: 'TaskScheduler' +2025-10-24 00:08:47.985 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:08:58.007 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:08:58 + → module: 'TaskScheduler' +2025-10-24 00:08:58.007 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:09:08.015 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:09:08 + → module: 'TaskScheduler' +2025-10-24 00:09:08.016 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:09:18.025 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:09:18 + → module: 'TaskScheduler' +2025-10-24 00:09:18.025 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:09:28.033 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:09:28 + → module: 'TaskScheduler' +2025-10-24 00:09:28.033 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:09:38.056 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:09:38 + → module: 'TaskScheduler' +2025-10-24 00:09:38.056 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:09:48.083 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:09:48 + → module: 'TaskScheduler' +2025-10-24 00:09:48.083 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:09:58.091 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:09:58 + → module: 'TaskScheduler' +2025-10-24 00:09:58.091 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:10:08.099 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:10:08 + → module: 'TaskScheduler' +2025-10-24 00:10:08.100 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:10:08.119 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:10:08.135 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 00:10:08.136 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:10:08.137 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 00:10:08.137 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 00:10:08.137 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 00:10:08.140 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 00:10:08.144 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 00:10:08.144 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 00:10:08.145 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 15:56:51 + → module: 'NewsAPIClient' +2025-10-24 00:10:08.145 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 15:56:51 + → module: 'NewsAPIClient' +2025-10-24 00:10:08.146 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 00:10:08.562 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:10:08.572 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:10:08.585 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:10:08.877 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:10:08.878 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 00:10:08.879 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.73秒 + → module: 'NewsAPIClient' +2025-10-24 00:10:08.879 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 00:10:08.880 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 00:10:08.881 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 00:10:08.882 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 00:10:08.884 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 15:56:51 + → module: 'NewsAPIClient' +2025-10-24 00:10:08.884 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 15:56:51 + → module: 'NewsAPIClient' +2025-10-24 00:10:08.885 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.75秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 00:10:08.907 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 00:10:08.908 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:10:18.138 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:10:18 + → module: 'TaskScheduler' +2025-10-24 00:10:18.138 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:10:28.146 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:10:28 + → module: 'TaskScheduler' +2025-10-24 00:10:28.146 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:10:38.154 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:10:38 + → module: 'TaskScheduler' +2025-10-24 00:10:38.155 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:10:48.163 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:10:48 + → module: 'TaskScheduler' +2025-10-24 00:10:48.163 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:10:58.172 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:10:58 + → module: 'TaskScheduler' +2025-10-24 00:10:58.173 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:11:08.186 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:11:08 + → module: 'TaskScheduler' +2025-10-24 00:11:08.186 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:11:18.193 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:11:18 + → module: 'TaskScheduler' +2025-10-24 00:11:18.194 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:11:28.206 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:11:28 + → module: 'TaskScheduler' +2025-10-24 00:11:28.206 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:11:38.214 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:11:38 + → module: 'TaskScheduler' +2025-10-24 00:11:38.214 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:11:48.242 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:11:48 + → module: 'TaskScheduler' +2025-10-24 00:11:48.242 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:11:58.250 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:11:58 + → module: 'TaskScheduler' +2025-10-24 00:11:58.250 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:12:08.271 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:12:08 + → module: 'TaskScheduler' +2025-10-24 00:12:08.272 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:12:18.293 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:12:18 + → module: 'TaskScheduler' +2025-10-24 00:12:18.293 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:12:28.303 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:12:28 + → module: 'TaskScheduler' +2025-10-24 00:12:28.304 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:12:38.314 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:12:38 + → module: 'TaskScheduler' +2025-10-24 00:12:38.314 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:12:48.322 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:12:48 + → module: 'TaskScheduler' +2025-10-24 00:12:48.322 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:12:58.330 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:12:58 + → module: 'TaskScheduler' +2025-10-24 00:12:58.330 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:13:08.337 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:13:08 + → module: 'TaskScheduler' +2025-10-24 00:13:08.337 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:13:18.347 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:13:18 + → module: 'TaskScheduler' +2025-10-24 00:13:18.347 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:13:28.356 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:13:28 + → module: 'TaskScheduler' +2025-10-24 00:13:28.356 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:13:38.365 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:13:38 + → module: 'TaskScheduler' +2025-10-24 00:13:38.365 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:13:48.372 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:13:48 + → module: 'TaskScheduler' +2025-10-24 00:13:48.372 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:13:58.381 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:13:58 + → module: 'TaskScheduler' +2025-10-24 00:13:58.381 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:14:08.412 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:14:08 + → module: 'TaskScheduler' +2025-10-24 00:14:08.412 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:14:18.421 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:14:18 + → module: 'TaskScheduler' +2025-10-24 00:14:18.421 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:14:28.429 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:14:28 + → module: 'TaskScheduler' +2025-10-24 00:14:28.429 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:14:38.438 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:14:38 + → module: 'TaskScheduler' +2025-10-24 00:14:38.438 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:14:48.466 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:14:48 + → module: 'TaskScheduler' +2025-10-24 00:14:48.466 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:14:58.475 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:14:58 + → module: 'TaskScheduler' +2025-10-24 00:14:58.475 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:15:08.483 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:15:08 + → module: 'TaskScheduler' +2025-10-24 00:15:08.483 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:15:08.504 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:15:08.535 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 00:15:08.536 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 00:15:08.536 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:15:08.536 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 00:15:08.536 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 00:15:08.541 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 00:15:08.543 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 00:15:08.544 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 00:15:08.544 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 15:56:51 + → module: 'NewsAPIClient' +2025-10-24 00:15:08.544 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 15:56:51 + → module: 'NewsAPIClient' +2025-10-24 00:15:08.545 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 00:15:08.982 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:15:08.995 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:15:09.004 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:15:09.285 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:15:09.287 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 00:15:09.288 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.74秒 + → module: 'NewsAPIClient' +2025-10-24 00:15:09.288 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 00:15:09.289 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 00:15:09.290 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 00:15:09.291 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 00:15:09.293 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 15:56:51 + → module: 'NewsAPIClient' +2025-10-24 00:15:09.293 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 15:56:51 + → module: 'NewsAPIClient' +2025-10-24 00:15:09.293 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.76秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 00:15:09.330 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 00:15:09.331 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:15:18.539 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:15:18 + → module: 'TaskScheduler' +2025-10-24 00:15:18.539 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:15:28.560 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:15:28 + → module: 'TaskScheduler' +2025-10-24 00:15:28.560 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:15:38.568 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:15:38 + → module: 'TaskScheduler' +2025-10-24 00:15:38.568 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:15:48.592 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:15:48 + → module: 'TaskScheduler' +2025-10-24 00:15:48.592 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:15:58.621 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:15:58 + → module: 'TaskScheduler' +2025-10-24 00:15:58.621 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:16:08.630 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:16:08 + → module: 'TaskScheduler' +2025-10-24 00:16:08.631 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:16:18.662 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:16:18 + → module: 'TaskScheduler' +2025-10-24 00:16:18.662 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:16:28.689 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:16:28 + → module: 'TaskScheduler' +2025-10-24 00:16:28.689 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:16:38.699 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:16:38 + → module: 'TaskScheduler' +2025-10-24 00:16:38.699 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:16:48.707 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:16:48 + → module: 'TaskScheduler' +2025-10-24 00:16:48.707 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:16:58.736 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:16:58 + → module: 'TaskScheduler' +2025-10-24 00:16:58.737 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:17:08.768 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:17:08 + → module: 'TaskScheduler' +2025-10-24 00:17:08.769 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:17:18.791 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:17:18 + → module: 'TaskScheduler' +2025-10-24 00:17:18.791 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:17:28.823 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:17:28 + → module: 'TaskScheduler' +2025-10-24 00:17:28.823 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:17:38.842 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:17:38 + → module: 'TaskScheduler' +2025-10-24 00:17:38.842 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:17:48.853 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:17:48 + → module: 'TaskScheduler' +2025-10-24 00:17:48.853 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:17:58.863 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:17:58 + → module: 'TaskScheduler' +2025-10-24 00:17:58.863 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:18:08.871 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:18:08 + → module: 'TaskScheduler' +2025-10-24 00:18:08.871 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:18:18.879 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:18:18 + → module: 'TaskScheduler' +2025-10-24 00:18:18.880 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:18:28.887 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:18:28 + → module: 'TaskScheduler' +2025-10-24 00:18:28.888 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:18:38.896 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:18:38 + → module: 'TaskScheduler' +2025-10-24 00:18:38.896 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:18:48.926 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:18:48 + → module: 'TaskScheduler' +2025-10-24 00:18:48.927 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:18:58.935 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:18:58 + → module: 'TaskScheduler' +2025-10-24 00:18:58.935 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:19:08.966 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:19:08 + → module: 'TaskScheduler' +2025-10-24 00:19:08.966 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:19:18.973 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:19:18 + → module: 'TaskScheduler' +2025-10-24 00:19:18.974 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:19:28.997 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:19:28 + → module: 'TaskScheduler' +2025-10-24 00:19:28.997 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:19:39.004 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:19:39 + → module: 'TaskScheduler' +2025-10-24 00:19:39.004 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:19:49.012 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:19:49 + → module: 'TaskScheduler' +2025-10-24 00:19:49.013 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:19:59.024 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:19:59 + → module: 'TaskScheduler' +2025-10-24 00:19:59.024 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:20:09.031 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:20:09 + → module: 'TaskScheduler' +2025-10-24 00:20:09.031 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:20:09.041 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:20:09.075 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 00:20:09.075 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:20:09.076 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 00:20:09.076 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 00:20:09.076 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 00:20:09.081 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 00:20:09.083 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 00:20:09.084 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 00:20:09.085 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 15:56:51 + → module: 'NewsAPIClient' +2025-10-24 00:20:09.085 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 15:56:51 + → module: 'NewsAPIClient' +2025-10-24 00:20:09.085 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 00:20:09.502 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:20:09.514 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:20:09.525 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:20:09.874 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:20:09.877 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 00:20:09.877 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.79秒 + → module: 'NewsAPIClient' +2025-10-24 00:20:09.878 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 00:20:09.879 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 00:20:09.881 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 00:20:09.881 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 00:20:09.883 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 15:56:51 + → module: 'NewsAPIClient' +2025-10-24 00:20:09.883 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 15:56:51 + → module: 'NewsAPIClient' +2025-10-24 00:20:09.883 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.81秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 00:20:09.900 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 00:20:09.900 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:20:19.078 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:20:19 + → module: 'TaskScheduler' +2025-10-24 00:20:19.078 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:20:29.104 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:20:29 + → module: 'TaskScheduler' +2025-10-24 00:20:29.105 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:20:39.113 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:20:39 + → module: 'TaskScheduler' +2025-10-24 00:20:39.113 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:20:49.121 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:20:49 + → module: 'TaskScheduler' +2025-10-24 00:20:49.121 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:20:59.132 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:20:59 + → module: 'TaskScheduler' +2025-10-24 00:20:59.132 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:21:09.140 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:21:09 + → module: 'TaskScheduler' +2025-10-24 00:21:09.140 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:21:19.148 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:21:19 + → module: 'TaskScheduler' +2025-10-24 00:21:19.148 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:21:29.156 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:21:29 + → module: 'TaskScheduler' +2025-10-24 00:21:29.156 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:21:39.186 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:21:39 + → module: 'TaskScheduler' +2025-10-24 00:21:39.186 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:21:49.194 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:21:49 + → module: 'TaskScheduler' +2025-10-24 00:21:49.194 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:21:59.201 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:21:59 + → module: 'TaskScheduler' +2025-10-24 00:21:59.201 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:22:09.228 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:22:09 + → module: 'TaskScheduler' +2025-10-24 00:22:09.228 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:22:19.236 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:22:19 + → module: 'TaskScheduler' +2025-10-24 00:22:19.236 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:22:29.244 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:22:29 + → module: 'TaskScheduler' +2025-10-24 00:22:29.244 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:22:39.251 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:22:39 + → module: 'TaskScheduler' +2025-10-24 00:22:39.251 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:22:49.259 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:22:49 + → module: 'TaskScheduler' +2025-10-24 00:22:49.259 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:22:59.266 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:22:59 + → module: 'TaskScheduler' +2025-10-24 00:22:59.266 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:23:09.289 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:23:09 + → module: 'TaskScheduler' +2025-10-24 00:23:09.290 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:23:19.312 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:23:19 + → module: 'TaskScheduler' +2025-10-24 00:23:19.312 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:23:29.321 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:23:29 + → module: 'TaskScheduler' +2025-10-24 00:23:29.321 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:23:39.350 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:23:39 + → module: 'TaskScheduler' +2025-10-24 00:23:39.350 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:23:49.358 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:23:49 + → module: 'TaskScheduler' +2025-10-24 00:23:49.359 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:23:59.383 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:23:59 + → module: 'TaskScheduler' +2025-10-24 00:23:59.383 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:24:09.391 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:24:09 + → module: 'TaskScheduler' +2025-10-24 00:24:09.392 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:24:19.403 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:24:19 + → module: 'TaskScheduler' +2025-10-24 00:24:19.403 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:24:29.412 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:24:29 + → module: 'TaskScheduler' +2025-10-24 00:24:29.413 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:24:39.421 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:24:39 + → module: 'TaskScheduler' +2025-10-24 00:24:39.421 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:24:49.429 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:24:49 + → module: 'TaskScheduler' +2025-10-24 00:24:49.429 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:24:59.437 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:24:59 + → module: 'TaskScheduler' +2025-10-24 00:24:59.437 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:25:09.462 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:25:09 + → module: 'TaskScheduler' +2025-10-24 00:25:09.462 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:25:09.470 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:25:09.493 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 00:25:09.493 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:25:09.494 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 00:25:09.494 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 00:25:09.494 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 00:25:09.497 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 00:25:09.520 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 00:25:09.521 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 00:25:09.522 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 15:56:51 + → module: 'NewsAPIClient' +2025-10-24 00:25:09.522 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 15:56:51 + → module: 'NewsAPIClient' +2025-10-24 00:25:09.522 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 00:25:09.895 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:25:09.936 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:25:09.949 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:25:10.234 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:25:10.237 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 00:25:10.237 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.71秒 + → module: 'NewsAPIClient' +2025-10-24 00:25:10.237 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 00:25:10.238 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 00:25:10.238 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 00:25:10.240 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 00:25:10.242 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 15:56:51 + → module: 'NewsAPIClient' +2025-10-24 00:25:10.242 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 15:56:51 + → module: 'NewsAPIClient' +2025-10-24 00:25:10.242 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.75秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 00:25:10.286 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 00:25:10.287 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:25:19.496 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:25:19 + → module: 'TaskScheduler' +2025-10-24 00:25:19.496 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:25:29.503 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:25:29 + → module: 'TaskScheduler' +2025-10-24 00:25:29.503 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:25:39.511 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:25:39 + → module: 'TaskScheduler' +2025-10-24 00:25:39.511 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:25:49.519 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:25:49 + → module: 'TaskScheduler' +2025-10-24 00:25:49.519 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:25:59.551 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:25:59 + → module: 'TaskScheduler' +2025-10-24 00:25:59.551 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:26:09.584 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:26:09 + → module: 'TaskScheduler' +2025-10-24 00:26:09.584 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:26:19.602 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:26:19 + → module: 'TaskScheduler' +2025-10-24 00:26:19.602 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:26:29.609 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:26:29 + → module: 'TaskScheduler' +2025-10-24 00:26:29.609 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:26:39.637 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:26:39 + → module: 'TaskScheduler' +2025-10-24 00:26:39.637 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:26:49.646 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:26:49 + → module: 'TaskScheduler' +2025-10-24 00:26:49.646 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:26:59.654 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:26:59 + → module: 'TaskScheduler' +2025-10-24 00:26:59.655 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:27:09.662 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:27:09 + → module: 'TaskScheduler' +2025-10-24 00:27:09.663 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:27:19.670 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:27:19 + → module: 'TaskScheduler' +2025-10-24 00:27:19.670 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:27:29.678 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:27:29 + → module: 'TaskScheduler' +2025-10-24 00:27:29.679 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:27:39.689 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:27:39 + → module: 'TaskScheduler' +2025-10-24 00:27:39.689 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:27:49.720 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:27:49 + → module: 'TaskScheduler' +2025-10-24 00:27:49.720 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:27:59.727 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:27:59 + → module: 'TaskScheduler' +2025-10-24 00:27:59.728 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:28:09.736 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:28:09 + → module: 'TaskScheduler' +2025-10-24 00:28:09.736 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:28:19.759 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:28:19 + → module: 'TaskScheduler' +2025-10-24 00:28:19.759 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:28:29.767 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:28:29 + → module: 'TaskScheduler' +2025-10-24 00:28:29.767 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:28:39.775 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:28:39 + → module: 'TaskScheduler' +2025-10-24 00:28:39.776 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:28:49.788 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:28:49 + → module: 'TaskScheduler' +2025-10-24 00:28:49.788 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:28:59.797 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:28:59 + → module: 'TaskScheduler' +2025-10-24 00:28:59.797 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:29:09.823 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:29:09 + → module: 'TaskScheduler' +2025-10-24 00:29:09.823 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:29:19.832 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:29:19 + → module: 'TaskScheduler' +2025-10-24 00:29:19.832 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:29:29.851 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:29:29 + → module: 'TaskScheduler' +2025-10-24 00:29:29.851 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:29:39.860 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:29:39 + → module: 'TaskScheduler' +2025-10-24 00:29:39.860 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:29:49.867 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:29:49 + → module: 'TaskScheduler' +2025-10-24 00:29:49.867 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:29:59.877 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:29:59 + → module: 'TaskScheduler' +2025-10-24 00:29:59.877 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:30:09.887 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:30:09 + → module: 'TaskScheduler' +2025-10-24 00:30:09.887 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:30:09.896 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:30:09.914 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 00:30:09.914 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:30:09.914 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 00:30:09.916 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 00:30:09.916 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 00:30:09.918 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 00:30:09.922 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 00:30:09.922 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 00:30:09.923 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 15:56:51 + → module: 'NewsAPIClient' +2025-10-24 00:30:09.923 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 15:56:51 + → module: 'NewsAPIClient' +2025-10-24 00:30:09.923 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 00:30:10.365 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:30:10.378 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:30:10.405 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:30:10.708 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:30:10.710 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 00:30:10.711 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.79秒 + → module: 'NewsAPIClient' +2025-10-24 00:30:10.711 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 00:30:10.711 | DEBUG | rss_subscriptions:235 - 处理条目 1: 中宣部组织召开学习宣传贯彻党的二十届四中全会精神电视电话会议 + → module: 'NewsAPIClient' +2025-10-24 00:30:10.731 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 00:30:10.732 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 00:30:10.733 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 00:30:10.742 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 00:30:10.742 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 00:30:10.742 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 00:30:10.743 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 00:30:10.746 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 00:30:10.746 | DEBUG | rss_subscriptions:235 - 处理条目 1: 中宣部组织召开学习宣传贯彻党的二十届四中全会精神电视电话会议 + → module: 'NewsAPIClient' +2025-10-24 00:30:10.750 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 00:30:10.752 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 00:30:10.754 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 00:30:10.760 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 0 + → error_message: "Duplicate entry '中宣部组织召开学习宣传贯彻党的二十届四中全ä' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '中宣部组织召开学习宣传贯彻党的二十届四中全会精神电视电话会议...', '文章链接': 'http://www.chinanews.com/gn/2025/10-24/10503549.shtml...', '文章摘要': '新华社北京10月23日电 中宣部23日晚在京召开学习宣传贯彻党的二十届四中全会精神电视电话会议。中共中央政治局委员、中宣部部长李书磊出席会议并讲话。... +2025-10-24 00:30:10.761 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 0 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-24 00:30:10.762 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '中宣部组织召开学习宣传贯彻党的二十届四中全ä' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '中宣部组织召开学习宣传贯彻党的二十届四中全ä' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '中宣部组织... +2025-10-24 00:30:10.763 | INFO | rss_subscriptions:259 - 成功写入 0/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 00:30:10.764 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 00:30:10.764 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 00:30:10.765 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.85秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 00:30:10.774 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 00:30:10.775 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:30:19.917 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:30:19 + → module: 'TaskScheduler' +2025-10-24 00:30:19.917 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:30:29.925 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:30:29 + → module: 'TaskScheduler' +2025-10-24 00:30:29.925 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:30:39.934 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:30:39 + → module: 'TaskScheduler' +2025-10-24 00:30:39.934 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:30:49.941 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:30:49 + → module: 'TaskScheduler' +2025-10-24 00:30:49.941 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:30:59.950 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:30:59 + → module: 'TaskScheduler' +2025-10-24 00:30:59.950 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:31:09.959 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:31:09 + → module: 'TaskScheduler' +2025-10-24 00:31:09.959 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:31:19.989 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:31:19 + → module: 'TaskScheduler' +2025-10-24 00:31:19.989 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:31:29.998 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:31:29 + → module: 'TaskScheduler' +2025-10-24 00:31:29.998 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:31:40.007 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:31:40 + → module: 'TaskScheduler' +2025-10-24 00:31:40.007 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:31:50.029 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:31:50 + → module: 'TaskScheduler' +2025-10-24 00:31:50.029 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:32:00.059 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:32:00 + → module: 'TaskScheduler' +2025-10-24 00:32:00.060 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:32:10.067 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:32:10 + → module: 'TaskScheduler' +2025-10-24 00:32:10.067 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:32:20.089 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:32:20 + → module: 'TaskScheduler' +2025-10-24 00:32:20.089 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:32:30.100 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:32:30 + → module: 'TaskScheduler' +2025-10-24 00:32:30.100 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:32:40.108 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:32:40 + → module: 'TaskScheduler' +2025-10-24 00:32:40.108 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:32:50.116 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:32:50 + → module: 'TaskScheduler' +2025-10-24 00:32:50.116 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:33:00.123 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:33:00 + → module: 'TaskScheduler' +2025-10-24 00:33:00.123 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:33:10.151 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:33:10 + → module: 'TaskScheduler' +2025-10-24 00:33:10.151 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:33:20.159 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:33:20 + → module: 'TaskScheduler' +2025-10-24 00:33:20.159 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:33:30.167 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:33:30 + → module: 'TaskScheduler' +2025-10-24 00:33:30.167 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:33:40.201 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:33:40 + → module: 'TaskScheduler' +2025-10-24 00:33:40.201 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:33:50.231 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:33:50 + → module: 'TaskScheduler' +2025-10-24 00:33:50.231 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:34:00.252 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:34:00 + → module: 'TaskScheduler' +2025-10-24 00:34:00.252 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:34:10.259 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:34:10 + → module: 'TaskScheduler' +2025-10-24 00:34:10.259 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:34:20.267 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:34:20 + → module: 'TaskScheduler' +2025-10-24 00:34:20.267 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:34:30.289 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:34:30 + → module: 'TaskScheduler' +2025-10-24 00:34:30.289 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:34:40.305 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:34:40 + → module: 'TaskScheduler' +2025-10-24 00:34:40.305 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:34:50.312 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:34:50 + → module: 'TaskScheduler' +2025-10-24 00:34:50.312 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:35:00.338 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:35:00 + → module: 'TaskScheduler' +2025-10-24 00:35:00.338 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:35:00.346 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:35:00.371 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 00:35:00.372 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:35:00.372 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 00:35:00.373 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 00:35:00.373 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 00:35:00.376 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 00:35:00.402 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 00:35:00.403 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 00:35:00.404 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 00:35:00.404 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 00:35:00.405 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 00:35:00.870 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:35:00.882 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:35:00.898 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:35:01.190 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:35:01.191 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 00:35:01.192 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.79秒 + → module: 'NewsAPIClient' +2025-10-24 00:35:01.192 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 00:35:01.194 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 00:35:01.194 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 00:35:01.195 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 00:35:01.197 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 00:35:01.197 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 00:35:01.197 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.82秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 00:35:01.239 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 00:35:01.240 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:35:10.374 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:35:10 + → module: 'TaskScheduler' +2025-10-24 00:35:10.374 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:35:20.401 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:35:20 + → module: 'TaskScheduler' +2025-10-24 00:35:20.401 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:35:30.409 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:35:30 + → module: 'TaskScheduler' +2025-10-24 00:35:30.409 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:35:40.418 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:35:40 + → module: 'TaskScheduler' +2025-10-24 00:35:40.418 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:35:50.429 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:35:50 + → module: 'TaskScheduler' +2025-10-24 00:35:50.429 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:36:00.449 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:36:00 + → module: 'TaskScheduler' +2025-10-24 00:36:00.449 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:36:10.455 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:36:10 + → module: 'TaskScheduler' +2025-10-24 00:36:10.455 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:36:20.465 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:36:20 + → module: 'TaskScheduler' +2025-10-24 00:36:20.465 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:36:30.474 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:36:30 + → module: 'TaskScheduler' +2025-10-24 00:36:30.474 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:36:40.504 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:36:40 + → module: 'TaskScheduler' +2025-10-24 00:36:40.505 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:36:50.518 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:36:50 + → module: 'TaskScheduler' +2025-10-24 00:36:50.519 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:37:00.526 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:37:00 + → module: 'TaskScheduler' +2025-10-24 00:37:00.526 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:37:10.555 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:37:10 + → module: 'TaskScheduler' +2025-10-24 00:37:10.555 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:37:20.563 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:37:20 + → module: 'TaskScheduler' +2025-10-24 00:37:20.563 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:37:30.590 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:37:30 + → module: 'TaskScheduler' +2025-10-24 00:37:30.590 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:37:40.598 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:37:40 + → module: 'TaskScheduler' +2025-10-24 00:37:40.598 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:37:50.624 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:37:50 + → module: 'TaskScheduler' +2025-10-24 00:37:50.624 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:38:00.634 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:38:00 + → module: 'TaskScheduler' +2025-10-24 00:38:00.634 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:38:10.666 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:38:10 + → module: 'TaskScheduler' +2025-10-24 00:38:10.667 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:38:20.684 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:38:20 + → module: 'TaskScheduler' +2025-10-24 00:38:20.684 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:38:30.714 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:38:30 + → module: 'TaskScheduler' +2025-10-24 00:38:30.714 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:38:40.721 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:38:40 + → module: 'TaskScheduler' +2025-10-24 00:38:40.721 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:38:50.730 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:38:50 + → module: 'TaskScheduler' +2025-10-24 00:38:50.730 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:39:00.739 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:39:00 + → module: 'TaskScheduler' +2025-10-24 00:39:00.739 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:39:10.747 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:39:10 + → module: 'TaskScheduler' +2025-10-24 00:39:10.748 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:39:20.755 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:39:20 + → module: 'TaskScheduler' +2025-10-24 00:39:20.756 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:39:30.763 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:39:30 + → module: 'TaskScheduler' +2025-10-24 00:39:30.763 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:39:40.771 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:39:40 + → module: 'TaskScheduler' +2025-10-24 00:39:40.771 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:39:50.780 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:39:50 + → module: 'TaskScheduler' +2025-10-24 00:39:50.780 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:40:00.789 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:40:00 + → module: 'TaskScheduler' +2025-10-24 00:40:00.789 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:40:00.817 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:40:00.851 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 00:40:00.851 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:40:00.851 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 00:40:00.853 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 00:40:00.853 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 00:40:00.874 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 00:40:00.890 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 00:40:00.891 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 00:40:00.892 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 00:40:00.892 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 00:40:00.892 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 00:40:01.302 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:40:01.317 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:40:01.327 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:40:01.701 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:40:01.704 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 00:40:01.704 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.81秒 + → module: 'NewsAPIClient' +2025-10-24 00:40:01.704 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 00:40:01.705 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 00:40:01.706 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 00:40:01.707 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 00:40:01.708 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 00:40:01.708 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 00:40:01.709 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.86秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 00:40:01.731 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 00:40:01.731 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:40:10.854 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:40:10 + → module: 'TaskScheduler' +2025-10-24 00:40:10.854 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:40:20.862 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:40:20 + → module: 'TaskScheduler' +2025-10-24 00:40:20.862 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:40:30.893 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:40:30 + → module: 'TaskScheduler' +2025-10-24 00:40:30.893 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:40:40.926 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:40:40 + → module: 'TaskScheduler' +2025-10-24 00:40:40.926 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:40:50.953 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:40:50 + → module: 'TaskScheduler' +2025-10-24 00:40:50.953 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:41:00.962 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:41:00 + → module: 'TaskScheduler' +2025-10-24 00:41:00.962 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:41:10.982 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:41:10 + → module: 'TaskScheduler' +2025-10-24 00:41:10.983 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:41:20.990 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:41:20 + → module: 'TaskScheduler' +2025-10-24 00:41:20.990 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:41:30.999 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:41:30 + → module: 'TaskScheduler' +2025-10-24 00:41:30.999 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:41:41.007 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:41:41 + → module: 'TaskScheduler' +2025-10-24 00:41:41.008 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:41:51.018 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:41:51 + → module: 'TaskScheduler' +2025-10-24 00:41:51.018 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:42:01.027 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:42:01 + → module: 'TaskScheduler' +2025-10-24 00:42:01.027 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:42:11.035 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:42:11 + → module: 'TaskScheduler' +2025-10-24 00:42:11.035 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:42:21.045 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:42:21 + → module: 'TaskScheduler' +2025-10-24 00:42:21.046 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:42:31.056 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:42:31 + → module: 'TaskScheduler' +2025-10-24 00:42:31.056 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:42:41.081 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:42:41 + → module: 'TaskScheduler' +2025-10-24 00:42:41.081 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:42:51.101 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:42:51 + → module: 'TaskScheduler' +2025-10-24 00:42:51.101 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:43:01.108 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:43:01 + → module: 'TaskScheduler' +2025-10-24 00:43:01.108 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:43:11.137 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:43:11 + → module: 'TaskScheduler' +2025-10-24 00:43:11.137 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:43:21.145 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:43:21 + → module: 'TaskScheduler' +2025-10-24 00:43:21.145 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:43:31.153 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:43:31 + → module: 'TaskScheduler' +2025-10-24 00:43:31.153 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:43:41.159 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:43:41 + → module: 'TaskScheduler' +2025-10-24 00:43:41.159 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:43:51.180 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:43:51 + → module: 'TaskScheduler' +2025-10-24 00:43:51.180 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:44:01.187 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:44:01 + → module: 'TaskScheduler' +2025-10-24 00:44:01.187 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:44:11.196 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:44:11 + → module: 'TaskScheduler' +2025-10-24 00:44:11.196 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:44:21.204 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:44:21 + → module: 'TaskScheduler' +2025-10-24 00:44:21.204 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:44:31.231 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:44:31 + → module: 'TaskScheduler' +2025-10-24 00:44:31.231 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:44:41.256 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:44:41 + → module: 'TaskScheduler' +2025-10-24 00:44:41.257 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:44:51.286 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:44:51 + → module: 'TaskScheduler' +2025-10-24 00:44:51.286 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:45:01.298 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:45:01 + → module: 'TaskScheduler' +2025-10-24 00:45:01.298 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:45:01.305 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:45:01.334 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 00:45:01.335 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:45:01.335 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 00:45:01.335 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 00:45:01.335 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 00:45:01.338 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 00:45:01.341 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 00:45:01.341 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 00:45:01.342 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 00:45:01.342 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 00:45:01.342 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 00:45:01.842 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:45:01.855 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:45:01.867 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:45:02.232 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:45:02.234 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 00:45:02.234 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.89秒 + → module: 'NewsAPIClient' +2025-10-24 00:45:02.234 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 00:45:02.235 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 00:45:02.236 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 00:45:02.238 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 00:45:02.240 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 00:45:02.240 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 00:45:02.240 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.91秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 00:45:02.249 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 00:45:02.249 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:45:11.336 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:45:11 + → module: 'TaskScheduler' +2025-10-24 00:45:11.336 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:45:21.344 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:45:21 + → module: 'TaskScheduler' +2025-10-24 00:45:21.344 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:45:31.354 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:45:31 + → module: 'TaskScheduler' +2025-10-24 00:45:31.354 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:45:41.367 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:45:41 + → module: 'TaskScheduler' +2025-10-24 00:45:41.367 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:45:51.373 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:45:51 + → module: 'TaskScheduler' +2025-10-24 00:45:51.373 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:46:01.382 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:46:01 + → module: 'TaskScheduler' +2025-10-24 00:46:01.382 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:46:11.391 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:46:11 + → module: 'TaskScheduler' +2025-10-24 00:46:11.391 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:46:21.420 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:46:21 + → module: 'TaskScheduler' +2025-10-24 00:46:21.420 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:46:31.444 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:46:31 + → module: 'TaskScheduler' +2025-10-24 00:46:31.445 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:46:41.452 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:46:41 + → module: 'TaskScheduler' +2025-10-24 00:46:41.452 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:46:51.463 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:46:51 + → module: 'TaskScheduler' +2025-10-24 00:46:51.463 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:47:01.472 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:47:01 + → module: 'TaskScheduler' +2025-10-24 00:47:01.472 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:47:11.480 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:47:11 + → module: 'TaskScheduler' +2025-10-24 00:47:11.480 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:47:21.489 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:47:21 + → module: 'TaskScheduler' +2025-10-24 00:47:21.489 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:47:31.496 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:47:31 + → module: 'TaskScheduler' +2025-10-24 00:47:31.496 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:47:41.504 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:47:41 + → module: 'TaskScheduler' +2025-10-24 00:47:41.504 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:47:51.511 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:47:51 + → module: 'TaskScheduler' +2025-10-24 00:47:51.511 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:48:01.529 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:48:01 + → module: 'TaskScheduler' +2025-10-24 00:48:01.529 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:48:11.536 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:48:11 + → module: 'TaskScheduler' +2025-10-24 00:48:11.536 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:48:21.545 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:48:21 + → module: 'TaskScheduler' +2025-10-24 00:48:21.545 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:48:31.572 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:48:31 + → module: 'TaskScheduler' +2025-10-24 00:48:31.572 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:48:41.580 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:48:41 + → module: 'TaskScheduler' +2025-10-24 00:48:41.580 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:48:51.588 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:48:51 + → module: 'TaskScheduler' +2025-10-24 00:48:51.588 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:49:01.596 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:49:01 + → module: 'TaskScheduler' +2025-10-24 00:49:01.596 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:49:11.604 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:49:11 + → module: 'TaskScheduler' +2025-10-24 00:49:11.604 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:49:21.622 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:49:21 + → module: 'TaskScheduler' +2025-10-24 00:49:21.622 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:49:31.629 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:49:31 + → module: 'TaskScheduler' +2025-10-24 00:49:31.629 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:49:41.657 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:49:41 + → module: 'TaskScheduler' +2025-10-24 00:49:41.657 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:49:51.665 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:49:51 + → module: 'TaskScheduler' +2025-10-24 00:49:51.665 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:50:01.672 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:50:01 + → module: 'TaskScheduler' +2025-10-24 00:50:01.673 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:50:01.679 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:50:01.717 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 00:50:01.718 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:50:01.718 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 00:50:01.718 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 00:50:01.718 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 00:50:01.746 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 00:50:01.760 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 00:50:01.761 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 00:50:01.762 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 00:50:01.762 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 00:50:01.762 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 00:50:02.208 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:50:02.229 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:50:02.264 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:50:02.587 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:50:02.588 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 00:50:02.589 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.83秒 + → module: 'NewsAPIClient' +2025-10-24 00:50:02.589 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 00:50:02.590 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 00:50:02.591 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 00:50:02.592 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 00:50:02.594 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 00:50:02.594 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 00:50:02.594 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.88秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 00:50:02.603 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 00:50:02.603 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:50:11.719 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:50:11 + → module: 'TaskScheduler' +2025-10-24 00:50:11.719 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:50:21.728 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:50:21 + → module: 'TaskScheduler' +2025-10-24 00:50:21.728 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:50:31.739 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:50:31 + → module: 'TaskScheduler' +2025-10-24 00:50:31.739 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:50:41.749 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:50:41 + → module: 'TaskScheduler' +2025-10-24 00:50:41.749 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:50:51.757 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:50:51 + → module: 'TaskScheduler' +2025-10-24 00:50:51.757 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:51:01.766 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:51:01 + → module: 'TaskScheduler' +2025-10-24 00:51:01.766 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:51:11.772 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:51:11 + → module: 'TaskScheduler' +2025-10-24 00:51:11.772 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:51:21.781 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:51:21 + → module: 'TaskScheduler' +2025-10-24 00:51:21.781 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:51:31.793 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:51:31 + → module: 'TaskScheduler' +2025-10-24 00:51:31.794 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:51:41.802 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:51:41 + → module: 'TaskScheduler' +2025-10-24 00:51:41.802 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:51:51.832 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:51:51 + → module: 'TaskScheduler' +2025-10-24 00:51:51.832 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:52:01.862 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:52:01 + → module: 'TaskScheduler' +2025-10-24 00:52:01.862 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:52:11.872 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:52:11 + → module: 'TaskScheduler' +2025-10-24 00:52:11.873 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:52:21.881 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:52:21 + → module: 'TaskScheduler' +2025-10-24 00:52:21.881 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:52:31.889 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:52:31 + → module: 'TaskScheduler' +2025-10-24 00:52:31.889 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:52:41.899 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:52:41 + → module: 'TaskScheduler' +2025-10-24 00:52:41.899 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:52:51.923 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:52:51 + → module: 'TaskScheduler' +2025-10-24 00:52:51.923 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:53:01.953 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:53:01 + → module: 'TaskScheduler' +2025-10-24 00:53:01.953 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:53:11.986 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:53:11 + → module: 'TaskScheduler' +2025-10-24 00:53:11.986 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:53:21.993 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:53:21 + → module: 'TaskScheduler' +2025-10-24 00:53:21.994 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:53:32.022 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:53:32 + → module: 'TaskScheduler' +2025-10-24 00:53:32.022 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:53:42.030 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:53:42 + → module: 'TaskScheduler' +2025-10-24 00:53:42.030 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:53:52.049 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:53:52 + → module: 'TaskScheduler' +2025-10-24 00:53:52.049 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:54:02.057 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:54:02 + → module: 'TaskScheduler' +2025-10-24 00:54:02.057 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:54:12.064 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:54:12 + → module: 'TaskScheduler' +2025-10-24 00:54:12.065 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:54:22.073 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:54:22 + → module: 'TaskScheduler' +2025-10-24 00:54:22.074 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:54:32.082 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:54:32 + → module: 'TaskScheduler' +2025-10-24 00:54:32.082 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:54:42.104 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:54:42 + → module: 'TaskScheduler' +2025-10-24 00:54:42.104 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:54:52.111 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:54:52 + → module: 'TaskScheduler' +2025-10-24 00:54:52.111 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:55:02.119 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:55:02 + → module: 'TaskScheduler' +2025-10-24 00:55:02.120 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:55:02.127 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:55:02.166 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 00:55:02.166 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:55:02.167 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 00:55:02.167 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 00:55:02.167 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 00:55:02.171 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 00:55:02.175 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 00:55:02.176 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 00:55:02.176 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 00:55:02.176 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 00:55:02.176 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 00:55:02.602 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:55:02.614 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:55:02.656 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:55:02.963 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 00:55:02.964 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 00:55:02.965 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.79秒 + → module: 'NewsAPIClient' +2025-10-24 00:55:02.965 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 00:55:02.966 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 00:55:02.967 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 00:55:02.968 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 00:55:02.969 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 00:55:02.969 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 00:55:02.970 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.80秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 00:55:02.978 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 00:55:02.979 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 00:55:12.168 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:55:12 + → module: 'TaskScheduler' +2025-10-24 00:55:12.168 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:55:22.196 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:55:22 + → module: 'TaskScheduler' +2025-10-24 00:55:22.196 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:55:32.204 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:55:32 + → module: 'TaskScheduler' +2025-10-24 00:55:32.204 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:55:42.228 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:55:42 + → module: 'TaskScheduler' +2025-10-24 00:55:42.228 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:55:52.246 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:55:52 + → module: 'TaskScheduler' +2025-10-24 00:55:52.246 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:56:02.256 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:56:02 + → module: 'TaskScheduler' +2025-10-24 00:56:02.256 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:56:12.288 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:56:12 + → module: 'TaskScheduler' +2025-10-24 00:56:12.288 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:56:22.295 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:56:22 + → module: 'TaskScheduler' +2025-10-24 00:56:22.295 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:56:32.305 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:56:32 + → module: 'TaskScheduler' +2025-10-24 00:56:32.305 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:56:42.338 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:56:42 + → module: 'TaskScheduler' +2025-10-24 00:56:42.338 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:56:52.359 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:56:52 + → module: 'TaskScheduler' +2025-10-24 00:56:52.359 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:57:02.367 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:57:02 + → module: 'TaskScheduler' +2025-10-24 00:57:02.367 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:57:12.393 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:57:12 + → module: 'TaskScheduler' +2025-10-24 00:57:12.393 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:57:22.401 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:57:22 + → module: 'TaskScheduler' +2025-10-24 00:57:22.401 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:57:32.429 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:57:32 + → module: 'TaskScheduler' +2025-10-24 00:57:32.429 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:57:42.455 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:57:42 + → module: 'TaskScheduler' +2025-10-24 00:57:42.455 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:57:52.465 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:57:52 + → module: 'TaskScheduler' +2025-10-24 00:57:52.465 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:58:02.490 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:58:02 + → module: 'TaskScheduler' +2025-10-24 00:58:02.490 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:58:12.521 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:58:12 + → module: 'TaskScheduler' +2025-10-24 00:58:12.521 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:58:22.530 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:58:22 + → module: 'TaskScheduler' +2025-10-24 00:58:22.530 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:58:32.539 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:58:32 + → module: 'TaskScheduler' +2025-10-24 00:58:32.539 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:58:42.566 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:58:42 + → module: 'TaskScheduler' +2025-10-24 00:58:42.566 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:58:52.574 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:58:52 + → module: 'TaskScheduler' +2025-10-24 00:58:52.574 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:59:02.582 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:59:02 + → module: 'TaskScheduler' +2025-10-24 00:59:02.582 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:59:12.589 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:59:12 + → module: 'TaskScheduler' +2025-10-24 00:59:12.590 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:59:22.598 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:59:22 + → module: 'TaskScheduler' +2025-10-24 00:59:22.598 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:59:32.625 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:59:32 + → module: 'TaskScheduler' +2025-10-24 00:59:32.625 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:59:42.633 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:59:42 + → module: 'TaskScheduler' +2025-10-24 00:59:42.633 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 00:59:52.655 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 00:59:52 + → module: 'TaskScheduler' +2025-10-24 00:59:52.655 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:00:02.673 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:00:02 + → module: 'TaskScheduler' +2025-10-24 01:00:02.674 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:00:02.693 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:00:02.748 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 01:00:02.748 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:00:02.748 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 01:00:02.749 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 01:00:02.749 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 01:00:02.751 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 01:00:02.755 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 01:00:02.755 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 01:00:02.756 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:00:02.756 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:00:02.756 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 01:00:03.177 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:00:03.238 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:00:03.440 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:00:03.536 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:00:03.538 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 01:00:03.538 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.78秒 + → module: 'NewsAPIClient' +2025-10-24 01:00:03.539 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 01:00:03.539 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 01:00:03.541 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 01:00:03.542 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 01:00:03.543 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:00:03.543 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:00:03.544 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.80秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 01:00:03.553 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 01:00:03.553 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:00:12.750 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:00:12 + → module: 'TaskScheduler' +2025-10-24 01:00:12.750 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:00:22.759 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:00:22 + → module: 'TaskScheduler' +2025-10-24 01:00:22.759 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:00:32.777 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:00:32 + → module: 'TaskScheduler' +2025-10-24 01:00:32.777 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:00:42.785 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:00:42 + → module: 'TaskScheduler' +2025-10-24 01:00:42.785 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:00:52.814 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:00:52 + → module: 'TaskScheduler' +2025-10-24 01:00:52.814 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:01:02.821 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:01:02 + → module: 'TaskScheduler' +2025-10-24 01:01:02.822 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:01:12.829 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:01:12 + → module: 'TaskScheduler' +2025-10-24 01:01:12.829 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:01:22.861 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:01:22 + → module: 'TaskScheduler' +2025-10-24 01:01:22.861 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:01:32.870 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:01:32 + → module: 'TaskScheduler' +2025-10-24 01:01:32.870 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:01:42.880 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:01:42 + → module: 'TaskScheduler' +2025-10-24 01:01:42.880 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:01:52.888 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:01:52 + → module: 'TaskScheduler' +2025-10-24 01:01:52.888 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:02:02.896 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:02:02 + → module: 'TaskScheduler' +2025-10-24 01:02:02.896 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:02:12.904 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:02:12 + → module: 'TaskScheduler' +2025-10-24 01:02:12.904 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:02:22.913 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:02:22 + → module: 'TaskScheduler' +2025-10-24 01:02:22.913 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:02:32.945 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:02:32 + → module: 'TaskScheduler' +2025-10-24 01:02:32.945 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:02:42.978 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:02:42 + → module: 'TaskScheduler' +2025-10-24 01:02:42.978 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:02:52.989 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:02:52 + → module: 'TaskScheduler' +2025-10-24 01:02:52.989 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:03:02.998 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:03:02 + → module: 'TaskScheduler' +2025-10-24 01:03:02.998 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:03:13.025 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:03:13 + → module: 'TaskScheduler' +2025-10-24 01:03:13.025 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:03:23.055 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:03:23 + → module: 'TaskScheduler' +2025-10-24 01:03:23.055 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:03:33.064 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:03:33 + → module: 'TaskScheduler' +2025-10-24 01:03:33.064 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:03:43.096 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:03:43 + → module: 'TaskScheduler' +2025-10-24 01:03:43.096 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:03:53.115 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:03:53 + → module: 'TaskScheduler' +2025-10-24 01:03:53.115 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:04:03.140 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:04:03 + → module: 'TaskScheduler' +2025-10-24 01:04:03.140 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:04:13.148 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:04:13 + → module: 'TaskScheduler' +2025-10-24 01:04:13.148 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:04:23.156 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:04:23 + → module: 'TaskScheduler' +2025-10-24 01:04:23.156 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:04:33.178 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:04:33 + → module: 'TaskScheduler' +2025-10-24 01:04:33.178 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:04:43.187 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:04:43 + → module: 'TaskScheduler' +2025-10-24 01:04:43.187 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:04:53.197 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:04:53 + → module: 'TaskScheduler' +2025-10-24 01:04:53.197 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:05:03.204 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:05:03 + → module: 'TaskScheduler' +2025-10-24 01:05:03.204 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:05:03.215 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:05:03.224 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 01:05:03.225 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:05:03.226 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 01:05:03.226 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 01:05:03.226 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 01:05:03.242 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 01:05:03.256 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 01:05:03.257 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 01:05:03.258 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:05:03.258 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:05:03.258 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 01:05:03.702 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:05:03.721 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:05:03.735 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:05:04.052 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:05:04.054 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 01:05:04.055 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.80秒 + → module: 'NewsAPIClient' +2025-10-24 01:05:04.055 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 01:05:04.056 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 01:05:04.057 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 01:05:04.058 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 01:05:04.060 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:05:04.060 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:05:04.060 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.83秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 01:05:04.069 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 01:05:04.070 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:05:13.227 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:05:13 + → module: 'TaskScheduler' +2025-10-24 01:05:13.227 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:05:23.253 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:05:23 + → module: 'TaskScheduler' +2025-10-24 01:05:23.253 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:05:33.261 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:05:33 + → module: 'TaskScheduler' +2025-10-24 01:05:33.261 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:05:43.268 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:05:43 + → module: 'TaskScheduler' +2025-10-24 01:05:43.268 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:05:53.300 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:05:53 + → module: 'TaskScheduler' +2025-10-24 01:05:53.300 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:06:03.308 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:06:03 + → module: 'TaskScheduler' +2025-10-24 01:06:03.308 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:06:13.335 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:06:13 + → module: 'TaskScheduler' +2025-10-24 01:06:13.335 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:06:23.343 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:06:23 + → module: 'TaskScheduler' +2025-10-24 01:06:23.344 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:06:33.355 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:06:33 + → module: 'TaskScheduler' +2025-10-24 01:06:33.355 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:06:43.363 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:06:43 + → module: 'TaskScheduler' +2025-10-24 01:06:43.363 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:06:53.385 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:06:53 + → module: 'TaskScheduler' +2025-10-24 01:06:53.385 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:07:03.392 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:07:03 + → module: 'TaskScheduler' +2025-10-24 01:07:03.392 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:07:13.399 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:07:13 + → module: 'TaskScheduler' +2025-10-24 01:07:13.399 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:07:23.407 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:07:23 + → module: 'TaskScheduler' +2025-10-24 01:07:23.407 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:07:33.415 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:07:33 + → module: 'TaskScheduler' +2025-10-24 01:07:33.415 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:07:43.423 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:07:43 + → module: 'TaskScheduler' +2025-10-24 01:07:43.423 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:07:53.430 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:07:53 + → module: 'TaskScheduler' +2025-10-24 01:07:53.430 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:08:03.438 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:08:03 + → module: 'TaskScheduler' +2025-10-24 01:08:03.438 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:08:13.447 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:08:13 + → module: 'TaskScheduler' +2025-10-24 01:08:13.447 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:08:23.459 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:08:23 + → module: 'TaskScheduler' +2025-10-24 01:08:23.459 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:08:23.486 | INFO | main:87 - 小时任务统计 + → module: 'Main' + → 总任务数: 12 + → 成功: 12 + → 失败: 0 +2025-10-24 01:08:33.487 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:08:33 + → module: 'TaskScheduler' +2025-10-24 01:08:33.487 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:08:43.494 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:08:43 + → module: 'TaskScheduler' +2025-10-24 01:08:43.494 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:08:53.501 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:08:53 + → module: 'TaskScheduler' +2025-10-24 01:08:53.501 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:09:03.534 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:09:03 + → module: 'TaskScheduler' +2025-10-24 01:09:03.534 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:09:13.556 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:09:13 + → module: 'TaskScheduler' +2025-10-24 01:09:13.556 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:09:23.580 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:09:23 + → module: 'TaskScheduler' +2025-10-24 01:09:23.581 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:09:33.589 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:09:33 + → module: 'TaskScheduler' +2025-10-24 01:09:33.589 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:09:43.596 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:09:43 + → module: 'TaskScheduler' +2025-10-24 01:09:43.596 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:09:53.626 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:09:53 + → module: 'TaskScheduler' +2025-10-24 01:09:53.627 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:10:03.658 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:10:03 + → module: 'TaskScheduler' +2025-10-24 01:10:03.659 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:10:03.669 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:10:03.691 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 01:10:03.691 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:10:03.692 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 01:10:03.692 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 01:10:03.692 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 01:10:03.696 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 01:10:03.699 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 01:10:03.699 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 01:10:03.700 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:10:03.700 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:10:03.700 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 01:10:04.122 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:10:04.136 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:10:04.146 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:10:04.485 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:10:04.487 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 01:10:04.488 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.79秒 + → module: 'NewsAPIClient' +2025-10-24 01:10:04.488 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 01:10:04.489 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 01:10:04.490 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 01:10:04.490 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 01:10:04.492 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:10:04.493 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:10:04.493 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.80秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 01:10:04.515 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 01:10:04.516 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:10:13.693 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:10:13 + → module: 'TaskScheduler' +2025-10-24 01:10:13.693 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:10:23.702 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:10:23 + → module: 'TaskScheduler' +2025-10-24 01:10:23.702 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:10:33.730 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:10:33 + → module: 'TaskScheduler' +2025-10-24 01:10:33.730 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:10:43.738 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:10:43 + → module: 'TaskScheduler' +2025-10-24 01:10:43.738 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:10:53.747 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:10:53 + → module: 'TaskScheduler' +2025-10-24 01:10:53.747 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:11:03.757 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:11:03 + → module: 'TaskScheduler' +2025-10-24 01:11:03.758 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:11:13.765 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:11:13 + → module: 'TaskScheduler' +2025-10-24 01:11:13.765 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:11:23.791 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:11:23 + → module: 'TaskScheduler' +2025-10-24 01:11:23.791 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:11:33.813 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:11:33 + → module: 'TaskScheduler' +2025-10-24 01:11:33.813 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:11:43.821 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:11:43 + → module: 'TaskScheduler' +2025-10-24 01:11:43.821 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:11:53.828 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:11:53 + → module: 'TaskScheduler' +2025-10-24 01:11:53.828 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:12:03.836 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:12:03 + → module: 'TaskScheduler' +2025-10-24 01:12:03.836 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:12:13.861 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:12:13 + → module: 'TaskScheduler' +2025-10-24 01:12:13.861 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:12:23.890 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:12:23 + → module: 'TaskScheduler' +2025-10-24 01:12:23.891 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:12:33.897 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:12:33 + → module: 'TaskScheduler' +2025-10-24 01:12:33.897 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:12:43.908 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:12:43 + → module: 'TaskScheduler' +2025-10-24 01:12:43.908 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:12:53.915 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:12:53 + → module: 'TaskScheduler' +2025-10-24 01:12:53.916 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:13:03.924 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:13:03 + → module: 'TaskScheduler' +2025-10-24 01:13:03.924 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:13:13.955 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:13:13 + → module: 'TaskScheduler' +2025-10-24 01:13:13.955 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:13:23.965 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:13:23 + → module: 'TaskScheduler' +2025-10-24 01:13:23.965 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:13:33.973 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:13:33 + → module: 'TaskScheduler' +2025-10-24 01:13:33.973 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:13:43.980 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:13:43 + → module: 'TaskScheduler' +2025-10-24 01:13:43.980 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:13:53.991 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:13:53 + → module: 'TaskScheduler' +2025-10-24 01:13:53.991 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:14:04.000 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:14:04 + → module: 'TaskScheduler' +2025-10-24 01:14:04.000 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:14:14.008 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:14:14 + → module: 'TaskScheduler' +2025-10-24 01:14:14.008 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:14:24.036 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:14:24 + → module: 'TaskScheduler' +2025-10-24 01:14:24.036 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:14:34.058 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:14:34 + → module: 'TaskScheduler' +2025-10-24 01:14:34.058 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:14:44.078 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:14:44 + → module: 'TaskScheduler' +2025-10-24 01:14:44.078 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:14:54.086 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:14:54 + → module: 'TaskScheduler' +2025-10-24 01:14:54.086 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:15:04.111 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:15:04 + → module: 'TaskScheduler' +2025-10-24 01:15:04.111 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:15:04.119 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:15:04.141 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 01:15:04.141 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:15:04.141 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 01:15:04.141 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 01:15:04.143 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 01:15:04.145 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 01:15:04.149 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 01:15:04.150 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 01:15:04.150 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:15:04.151 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:15:04.151 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 01:15:04.558 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:15:04.570 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:15:04.582 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:15:04.952 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:15:04.953 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 01:15:04.954 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.80秒 + → module: 'NewsAPIClient' +2025-10-24 01:15:04.954 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 01:15:04.956 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 01:15:04.957 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 01:15:04.958 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 01:15:04.960 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:15:04.960 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:15:04.961 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.82秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 01:15:04.991 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 01:15:04.991 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:15:14.144 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:15:14 + → module: 'TaskScheduler' +2025-10-24 01:15:14.144 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:15:24.152 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:15:24 + → module: 'TaskScheduler' +2025-10-24 01:15:24.152 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:15:34.186 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:15:34 + → module: 'TaskScheduler' +2025-10-24 01:15:34.186 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:15:44.197 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:15:44 + → module: 'TaskScheduler' +2025-10-24 01:15:44.197 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:15:54.207 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:15:54 + → module: 'TaskScheduler' +2025-10-24 01:15:54.207 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:16:04.214 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:16:04 + → module: 'TaskScheduler' +2025-10-24 01:16:04.214 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:16:14.222 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:16:14 + → module: 'TaskScheduler' +2025-10-24 01:16:14.222 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:16:24.230 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:16:24 + → module: 'TaskScheduler' +2025-10-24 01:16:24.230 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:16:34.252 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:16:34 + → module: 'TaskScheduler' +2025-10-24 01:16:34.252 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:16:44.274 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:16:44 + → module: 'TaskScheduler' +2025-10-24 01:16:44.274 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:16:54.283 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:16:54 + → module: 'TaskScheduler' +2025-10-24 01:16:54.283 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:17:04.313 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:17:04 + → module: 'TaskScheduler' +2025-10-24 01:17:04.313 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:17:14.331 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:17:14 + → module: 'TaskScheduler' +2025-10-24 01:17:14.331 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:17:24.340 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:17:24 + → module: 'TaskScheduler' +2025-10-24 01:17:24.340 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:17:34.359 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:17:34 + → module: 'TaskScheduler' +2025-10-24 01:17:34.359 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:17:44.382 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:17:44 + → module: 'TaskScheduler' +2025-10-24 01:17:44.382 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:17:54.410 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:17:54 + → module: 'TaskScheduler' +2025-10-24 01:17:54.410 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:18:04.417 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:18:04 + → module: 'TaskScheduler' +2025-10-24 01:18:04.417 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:18:14.425 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:18:14 + → module: 'TaskScheduler' +2025-10-24 01:18:14.425 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:18:24.434 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:18:24 + → module: 'TaskScheduler' +2025-10-24 01:18:24.434 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:18:34.461 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:18:34 + → module: 'TaskScheduler' +2025-10-24 01:18:34.461 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:18:44.469 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:18:44 + → module: 'TaskScheduler' +2025-10-24 01:18:44.469 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:18:54.480 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:18:54 + → module: 'TaskScheduler' +2025-10-24 01:18:54.480 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:19:04.500 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:19:04 + → module: 'TaskScheduler' +2025-10-24 01:19:04.500 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:19:14.527 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:19:14 + → module: 'TaskScheduler' +2025-10-24 01:19:14.527 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:19:24.548 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:19:24 + → module: 'TaskScheduler' +2025-10-24 01:19:24.548 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:19:34.556 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:19:34 + → module: 'TaskScheduler' +2025-10-24 01:19:34.556 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:19:44.563 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:19:44 + → module: 'TaskScheduler' +2025-10-24 01:19:44.563 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:19:54.572 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:19:54 + → module: 'TaskScheduler' +2025-10-24 01:19:54.572 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:20:04.592 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:20:04 + → module: 'TaskScheduler' +2025-10-24 01:20:04.592 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:20:04.601 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:20:04.610 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 01:20:04.610 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:20:04.611 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 01:20:04.611 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 01:20:04.611 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 01:20:04.614 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 01:20:04.640 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 01:20:04.640 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 01:20:04.641 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:20:04.641 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:20:04.641 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 01:20:05.067 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:20:05.080 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:20:05.115 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:20:05.387 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:20:05.388 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 01:20:05.389 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.75秒 + → module: 'NewsAPIClient' +2025-10-24 01:20:05.389 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 01:20:05.391 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 01:20:05.391 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 01:20:05.392 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 01:20:05.394 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:20:05.394 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:20:05.394 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.78秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 01:20:05.402 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 01:20:05.403 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:20:14.612 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:20:14 + → module: 'TaskScheduler' +2025-10-24 01:20:14.612 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:20:24.621 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:20:24 + → module: 'TaskScheduler' +2025-10-24 01:20:24.621 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:20:34.628 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:20:34 + → module: 'TaskScheduler' +2025-10-24 01:20:34.628 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:20:44.647 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:20:44 + → module: 'TaskScheduler' +2025-10-24 01:20:44.647 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:20:54.654 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:20:54 + → module: 'TaskScheduler' +2025-10-24 01:20:54.654 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:21:04.662 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:21:04 + → module: 'TaskScheduler' +2025-10-24 01:21:04.662 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:21:14.691 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:21:14 + → module: 'TaskScheduler' +2025-10-24 01:21:14.691 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:21:24.712 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:21:24 + → module: 'TaskScheduler' +2025-10-24 01:21:24.712 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:21:34.719 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:21:34 + → module: 'TaskScheduler' +2025-10-24 01:21:34.720 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:21:44.729 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:21:44 + → module: 'TaskScheduler' +2025-10-24 01:21:44.729 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:21:54.736 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:21:54 + → module: 'TaskScheduler' +2025-10-24 01:21:54.736 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:22:04.744 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:22:04 + → module: 'TaskScheduler' +2025-10-24 01:22:04.744 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:22:14.776 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:22:14 + → module: 'TaskScheduler' +2025-10-24 01:22:14.776 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:22:24.784 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:22:24 + → module: 'TaskScheduler' +2025-10-24 01:22:24.784 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:22:34.790 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:22:34 + → module: 'TaskScheduler' +2025-10-24 01:22:34.790 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:22:44.798 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:22:44 + → module: 'TaskScheduler' +2025-10-24 01:22:44.798 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:22:54.827 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:22:54 + → module: 'TaskScheduler' +2025-10-24 01:22:54.827 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:23:04.854 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:23:04 + → module: 'TaskScheduler' +2025-10-24 01:23:04.854 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:23:14.885 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:23:14 + → module: 'TaskScheduler' +2025-10-24 01:23:14.885 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:23:24.894 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:23:24 + → module: 'TaskScheduler' +2025-10-24 01:23:24.895 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:23:34.903 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:23:34 + → module: 'TaskScheduler' +2025-10-24 01:23:34.904 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:23:44.925 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:23:44 + → module: 'TaskScheduler' +2025-10-24 01:23:44.925 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:23:54.932 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:23:54 + → module: 'TaskScheduler' +2025-10-24 01:23:54.932 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:24:04.940 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:24:04 + → module: 'TaskScheduler' +2025-10-24 01:24:04.940 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:24:14.970 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:24:14 + → module: 'TaskScheduler' +2025-10-24 01:24:14.970 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:24:25.003 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:24:25 + → module: 'TaskScheduler' +2025-10-24 01:24:25.003 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:24:35.035 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:24:35 + → module: 'TaskScheduler' +2025-10-24 01:24:35.035 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:24:45.044 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:24:45 + → module: 'TaskScheduler' +2025-10-24 01:24:45.045 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:24:55.053 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:24:55 + → module: 'TaskScheduler' +2025-10-24 01:24:55.053 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:25:05.061 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:25:05 + → module: 'TaskScheduler' +2025-10-24 01:25:05.061 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:25:05.069 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:25:05.076 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 01:25:05.076 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:25:05.077 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 01:25:05.078 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 01:25:05.078 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 01:25:05.081 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 01:25:05.083 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 01:25:05.085 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 01:25:05.085 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:25:05.086 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:25:05.086 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 01:25:05.566 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:25:05.579 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:25:05.589 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:25:05.896 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:25:05.898 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 01:25:05.899 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.81秒 + → module: 'NewsAPIClient' +2025-10-24 01:25:05.899 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 01:25:05.900 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 01:25:05.901 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 01:25:05.902 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 01:25:05.904 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:25:05.904 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:25:05.905 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.83秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 01:25:05.940 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 01:25:05.940 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:25:15.079 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:25:15 + → module: 'TaskScheduler' +2025-10-24 01:25:15.079 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:25:25.087 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:25:25 + → module: 'TaskScheduler' +2025-10-24 01:25:25.087 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:25:35.108 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:25:35 + → module: 'TaskScheduler' +2025-10-24 01:25:35.108 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:25:45.117 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:25:45 + → module: 'TaskScheduler' +2025-10-24 01:25:45.117 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:25:55.149 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:25:55 + → module: 'TaskScheduler' +2025-10-24 01:25:55.149 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:26:05.157 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:26:05 + → module: 'TaskScheduler' +2025-10-24 01:26:05.157 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:26:15.168 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:26:15 + → module: 'TaskScheduler' +2025-10-24 01:26:15.168 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:26:25.192 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:26:25 + → module: 'TaskScheduler' +2025-10-24 01:26:25.192 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:26:35.216 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:26:35 + → module: 'TaskScheduler' +2025-10-24 01:26:35.216 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:26:45.225 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:26:45 + → module: 'TaskScheduler' +2025-10-24 01:26:45.225 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:26:55.234 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:26:55 + → module: 'TaskScheduler' +2025-10-24 01:26:55.234 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:27:05.244 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:27:05 + → module: 'TaskScheduler' +2025-10-24 01:27:05.244 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:27:15.251 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:27:15 + → module: 'TaskScheduler' +2025-10-24 01:27:15.251 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:27:25.258 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:27:25 + → module: 'TaskScheduler' +2025-10-24 01:27:25.258 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:27:35.267 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:27:35 + → module: 'TaskScheduler' +2025-10-24 01:27:35.267 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:27:45.290 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:27:45 + → module: 'TaskScheduler' +2025-10-24 01:27:45.290 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:27:55.299 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:27:55 + → module: 'TaskScheduler' +2025-10-24 01:27:55.299 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:28:05.306 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:28:05 + → module: 'TaskScheduler' +2025-10-24 01:28:05.306 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:28:15.339 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:28:15 + → module: 'TaskScheduler' +2025-10-24 01:28:15.339 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:28:25.347 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:28:25 + → module: 'TaskScheduler' +2025-10-24 01:28:25.347 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:28:35.376 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:28:35 + → module: 'TaskScheduler' +2025-10-24 01:28:35.376 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:28:45.383 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:28:45 + → module: 'TaskScheduler' +2025-10-24 01:28:45.383 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:28:55.391 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:28:55 + → module: 'TaskScheduler' +2025-10-24 01:28:55.391 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:29:05.400 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:29:05 + → module: 'TaskScheduler' +2025-10-24 01:29:05.400 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:29:15.429 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:29:15 + → module: 'TaskScheduler' +2025-10-24 01:29:15.429 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:29:25.437 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:29:25 + → module: 'TaskScheduler' +2025-10-24 01:29:25.437 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:29:35.445 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:29:35 + → module: 'TaskScheduler' +2025-10-24 01:29:35.445 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:29:45.455 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:29:45 + → module: 'TaskScheduler' +2025-10-24 01:29:45.455 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:29:55.463 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:29:55 + → module: 'TaskScheduler' +2025-10-24 01:29:55.463 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:30:05.471 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:30:05 + → module: 'TaskScheduler' +2025-10-24 01:30:05.471 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:30:05.503 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:30:05.528 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 01:30:05.528 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:30:05.529 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 01:30:05.529 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 01:30:05.529 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 01:30:05.532 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 01:30:05.544 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 01:30:05.545 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 01:30:05.545 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:30:05.545 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:30:05.545 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 01:30:05.946 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:30:05.957 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:30:05.980 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:30:06.397 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:30:06.399 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 01:30:06.399 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.85秒 + → module: 'NewsAPIClient' +2025-10-24 01:30:06.400 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 01:30:06.400 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 01:30:06.402 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 01:30:06.403 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 01:30:06.404 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:30:06.404 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:30:06.406 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.88秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 01:30:06.435 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 01:30:06.436 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:30:15.530 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:30:15 + → module: 'TaskScheduler' +2025-10-24 01:30:15.530 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:30:25.562 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:30:25 + → module: 'TaskScheduler' +2025-10-24 01:30:25.562 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:30:35.593 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:30:35 + → module: 'TaskScheduler' +2025-10-24 01:30:35.593 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:30:45.602 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:30:45 + → module: 'TaskScheduler' +2025-10-24 01:30:45.602 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:30:55.636 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:30:55 + → module: 'TaskScheduler' +2025-10-24 01:30:55.637 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:31:05.645 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:31:05 + → module: 'TaskScheduler' +2025-10-24 01:31:05.645 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:31:15.653 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:31:15 + → module: 'TaskScheduler' +2025-10-24 01:31:15.653 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:31:25.661 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:31:25 + → module: 'TaskScheduler' +2025-10-24 01:31:25.661 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:31:35.690 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:31:35 + → module: 'TaskScheduler' +2025-10-24 01:31:35.690 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:31:45.698 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:31:45 + → module: 'TaskScheduler' +2025-10-24 01:31:45.699 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:31:55.724 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:31:55 + → module: 'TaskScheduler' +2025-10-24 01:31:55.724 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:32:05.754 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:32:05 + → module: 'TaskScheduler' +2025-10-24 01:32:05.754 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:32:15.762 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:32:15 + → module: 'TaskScheduler' +2025-10-24 01:32:15.762 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:32:25.771 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:32:25 + → module: 'TaskScheduler' +2025-10-24 01:32:25.771 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:32:35.779 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:32:35 + → module: 'TaskScheduler' +2025-10-24 01:32:35.779 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:32:45.814 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:32:45 + → module: 'TaskScheduler' +2025-10-24 01:32:45.814 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:32:55.824 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:32:55 + → module: 'TaskScheduler' +2025-10-24 01:32:55.824 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:33:05.849 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:33:05 + → module: 'TaskScheduler' +2025-10-24 01:33:05.849 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:33:15.870 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:33:15 + → module: 'TaskScheduler' +2025-10-24 01:33:15.870 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:33:25.879 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:33:25 + → module: 'TaskScheduler' +2025-10-24 01:33:25.879 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:33:35.887 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:33:35 + → module: 'TaskScheduler' +2025-10-24 01:33:35.887 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:33:45.894 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:33:45 + → module: 'TaskScheduler' +2025-10-24 01:33:45.894 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:33:55.902 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:33:55 + → module: 'TaskScheduler' +2025-10-24 01:33:55.902 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:34:05.909 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:34:05 + → module: 'TaskScheduler' +2025-10-24 01:34:05.910 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:34:15.921 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:34:15 + → module: 'TaskScheduler' +2025-10-24 01:34:15.921 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:34:25.929 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:34:25 + → module: 'TaskScheduler' +2025-10-24 01:34:25.929 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:34:35.938 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:34:35 + → module: 'TaskScheduler' +2025-10-24 01:34:35.938 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:34:45.967 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:34:45 + → module: 'TaskScheduler' +2025-10-24 01:34:45.967 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:34:55.976 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:34:55 + → module: 'TaskScheduler' +2025-10-24 01:34:55.976 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:35:05.984 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:35:05 + → module: 'TaskScheduler' +2025-10-24 01:35:05.984 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:35:05.993 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:35:06.014 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 01:35:06.015 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:35:06.015 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 01:35:06.015 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 01:35:06.015 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 01:35:06.019 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 01:35:06.035 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 01:35:06.035 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 01:35:06.035 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:35:06.035 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:35:06.036 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 01:35:06.461 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:35:06.473 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:35:06.504 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:35:06.809 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:35:06.810 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 01:35:06.811 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.77秒 + → module: 'NewsAPIClient' +2025-10-24 01:35:06.811 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 01:35:06.811 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 01:35:06.813 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 01:35:06.814 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 01:35:06.816 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:35:06.816 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:35:06.816 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.80秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 01:35:06.825 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 01:35:06.825 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:35:16.017 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:35:16 + → module: 'TaskScheduler' +2025-10-24 01:35:16.017 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:35:26.035 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:35:26 + → module: 'TaskScheduler' +2025-10-24 01:35:26.035 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:35:36.047 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:35:36 + → module: 'TaskScheduler' +2025-10-24 01:35:36.047 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:35:46.076 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:35:46 + → module: 'TaskScheduler' +2025-10-24 01:35:46.076 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:35:56.086 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:35:56 + → module: 'TaskScheduler' +2025-10-24 01:35:56.086 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:36:06.114 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:36:06 + → module: 'TaskScheduler' +2025-10-24 01:36:06.114 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:36:16.123 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:36:16 + → module: 'TaskScheduler' +2025-10-24 01:36:16.123 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:36:26.131 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:36:26 + → module: 'TaskScheduler' +2025-10-24 01:36:26.131 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:36:36.138 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:36:36 + → module: 'TaskScheduler' +2025-10-24 01:36:36.138 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:36:46.145 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:36:46 + → module: 'TaskScheduler' +2025-10-24 01:36:46.145 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:36:56.167 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:36:56 + → module: 'TaskScheduler' +2025-10-24 01:36:56.167 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:37:06.196 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:37:06 + → module: 'TaskScheduler' +2025-10-24 01:37:06.196 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:37:16.204 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:37:16 + → module: 'TaskScheduler' +2025-10-24 01:37:16.204 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:37:26.213 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:37:26 + → module: 'TaskScheduler' +2025-10-24 01:37:26.213 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:37:36.241 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:37:36 + → module: 'TaskScheduler' +2025-10-24 01:37:36.241 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:37:46.274 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:37:46 + → module: 'TaskScheduler' +2025-10-24 01:37:46.274 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:37:56.283 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:37:56 + → module: 'TaskScheduler' +2025-10-24 01:37:56.283 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:38:06.309 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:38:06 + → module: 'TaskScheduler' +2025-10-24 01:38:06.309 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:38:16.337 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:38:16 + → module: 'TaskScheduler' +2025-10-24 01:38:16.337 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:38:26.345 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:38:26 + → module: 'TaskScheduler' +2025-10-24 01:38:26.345 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:38:36.353 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:38:36 + → module: 'TaskScheduler' +2025-10-24 01:38:36.353 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:38:46.363 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:38:46 + → module: 'TaskScheduler' +2025-10-24 01:38:46.363 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:38:56.370 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:38:56 + → module: 'TaskScheduler' +2025-10-24 01:38:56.371 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:39:06.400 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:39:06 + → module: 'TaskScheduler' +2025-10-24 01:39:06.400 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:39:16.423 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:39:16 + → module: 'TaskScheduler' +2025-10-24 01:39:16.423 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:39:26.431 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:39:26 + → module: 'TaskScheduler' +2025-10-24 01:39:26.431 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:39:36.451 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:39:36 + → module: 'TaskScheduler' +2025-10-24 01:39:36.451 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:39:46.478 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:39:46 + → module: 'TaskScheduler' +2025-10-24 01:39:46.478 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:39:56.486 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:39:56 + → module: 'TaskScheduler' +2025-10-24 01:39:56.486 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:40:06.510 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:40:06 + → module: 'TaskScheduler' +2025-10-24 01:40:06.511 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:40:06.518 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:40:06.554 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 01:40:06.554 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:40:06.556 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 01:40:06.556 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 01:40:06.556 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 01:40:06.583 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 01:40:06.601 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 01:40:06.601 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 01:40:06.602 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:40:06.602 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:40:06.603 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 01:40:07.064 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:40:07.084 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:40:07.094 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:40:07.430 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:40:07.432 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 01:40:07.432 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.83秒 + → module: 'NewsAPIClient' +2025-10-24 01:40:07.432 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 01:40:07.435 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 01:40:07.436 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 01:40:07.436 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 01:40:07.438 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:40:07.438 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:40:07.439 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.88秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 01:40:07.459 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 01:40:07.459 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:40:16.557 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:40:16 + → module: 'TaskScheduler' +2025-10-24 01:40:16.557 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:40:26.565 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:40:26 + → module: 'TaskScheduler' +2025-10-24 01:40:26.565 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:40:36.572 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:40:36 + → module: 'TaskScheduler' +2025-10-24 01:40:36.572 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:40:46.580 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:40:46 + → module: 'TaskScheduler' +2025-10-24 01:40:46.580 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:40:56.588 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:40:56 + → module: 'TaskScheduler' +2025-10-24 01:40:56.589 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:41:06.597 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:41:06 + → module: 'TaskScheduler' +2025-10-24 01:41:06.597 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:41:16.615 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:41:16 + → module: 'TaskScheduler' +2025-10-24 01:41:16.615 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:41:26.623 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:41:26 + → module: 'TaskScheduler' +2025-10-24 01:41:26.623 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:41:36.631 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:41:36 + → module: 'TaskScheduler' +2025-10-24 01:41:36.631 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:41:46.663 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:41:46 + → module: 'TaskScheduler' +2025-10-24 01:41:46.663 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:41:56.697 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:41:56 + → module: 'TaskScheduler' +2025-10-24 01:41:56.697 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:42:06.728 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:42:06 + → module: 'TaskScheduler' +2025-10-24 01:42:06.728 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:42:16.747 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:42:16 + → module: 'TaskScheduler' +2025-10-24 01:42:16.748 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:42:26.771 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:42:26 + → module: 'TaskScheduler' +2025-10-24 01:42:26.771 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:42:36.782 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:42:36 + → module: 'TaskScheduler' +2025-10-24 01:42:36.782 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:42:46.791 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:42:46 + → module: 'TaskScheduler' +2025-10-24 01:42:46.791 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:42:56.801 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:42:56 + → module: 'TaskScheduler' +2025-10-24 01:42:56.801 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:43:06.813 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:43:06 + → module: 'TaskScheduler' +2025-10-24 01:43:06.813 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:43:16.841 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:43:16 + → module: 'TaskScheduler' +2025-10-24 01:43:16.841 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:43:26.850 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:43:26 + → module: 'TaskScheduler' +2025-10-24 01:43:26.850 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:43:36.858 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:43:36 + → module: 'TaskScheduler' +2025-10-24 01:43:36.858 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:43:46.880 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:43:46 + → module: 'TaskScheduler' +2025-10-24 01:43:46.881 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:43:56.889 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:43:56 + → module: 'TaskScheduler' +2025-10-24 01:43:56.889 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:44:06.912 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:44:06 + → module: 'TaskScheduler' +2025-10-24 01:44:06.912 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:44:16.920 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:44:16 + → module: 'TaskScheduler' +2025-10-24 01:44:16.920 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:44:26.931 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:44:26 + → module: 'TaskScheduler' +2025-10-24 01:44:26.932 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:44:36.939 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:44:36 + → module: 'TaskScheduler' +2025-10-24 01:44:36.940 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:44:46.951 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:44:46 + → module: 'TaskScheduler' +2025-10-24 01:44:46.951 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:44:56.982 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:44:56 + → module: 'TaskScheduler' +2025-10-24 01:44:56.982 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:45:06.989 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:45:06 + → module: 'TaskScheduler' +2025-10-24 01:45:06.989 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:45:07.017 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:45:07.040 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 01:45:07.040 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:45:07.041 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 01:45:07.041 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 01:45:07.042 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 01:45:07.058 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 01:45:07.074 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 01:45:07.075 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 01:45:07.076 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:45:07.076 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:45:07.076 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 01:45:07.546 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:45:07.567 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:45:07.583 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:45:07.911 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:45:07.914 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 01:45:07.914 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.84秒 + → module: 'NewsAPIClient' +2025-10-24 01:45:07.915 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 01:45:07.916 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 01:45:07.917 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 01:45:07.918 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 01:45:07.919 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:45:07.919 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:45:07.920 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.88秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 01:45:07.945 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 01:45:07.945 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:45:17.042 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:45:17 + → module: 'TaskScheduler' +2025-10-24 01:45:17.042 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:45:27.050 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:45:27 + → module: 'TaskScheduler' +2025-10-24 01:45:27.050 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:45:37.079 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:45:37 + → module: 'TaskScheduler' +2025-10-24 01:45:37.079 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:45:47.087 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:45:47 + → module: 'TaskScheduler' +2025-10-24 01:45:47.087 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:45:57.105 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:45:57 + → module: 'TaskScheduler' +2025-10-24 01:45:57.106 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:46:07.137 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:46:07 + → module: 'TaskScheduler' +2025-10-24 01:46:07.137 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:46:17.159 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:46:17 + → module: 'TaskScheduler' +2025-10-24 01:46:17.159 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:46:27.189 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:46:27 + → module: 'TaskScheduler' +2025-10-24 01:46:27.189 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:46:37.208 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:46:37 + → module: 'TaskScheduler' +2025-10-24 01:46:37.208 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:46:47.215 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:46:47 + → module: 'TaskScheduler' +2025-10-24 01:46:47.215 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:46:57.226 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:46:57 + → module: 'TaskScheduler' +2025-10-24 01:46:57.226 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:47:07.246 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:47:07 + → module: 'TaskScheduler' +2025-10-24 01:47:07.246 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:47:17.256 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:47:17 + → module: 'TaskScheduler' +2025-10-24 01:47:17.256 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:47:27.264 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:47:27 + → module: 'TaskScheduler' +2025-10-24 01:47:27.264 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:47:37.273 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:47:37 + → module: 'TaskScheduler' +2025-10-24 01:47:37.273 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:47:47.303 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:47:47 + → module: 'TaskScheduler' +2025-10-24 01:47:47.303 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:47:57.313 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:47:57 + → module: 'TaskScheduler' +2025-10-24 01:47:57.313 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:48:07.321 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:48:07 + → module: 'TaskScheduler' +2025-10-24 01:48:07.321 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:48:17.329 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:48:17 + → module: 'TaskScheduler' +2025-10-24 01:48:17.329 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:48:27.349 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:48:27 + → module: 'TaskScheduler' +2025-10-24 01:48:27.350 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:48:37.359 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:48:37 + → module: 'TaskScheduler' +2025-10-24 01:48:37.359 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:48:47.367 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:48:47 + → module: 'TaskScheduler' +2025-10-24 01:48:47.367 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:48:57.377 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:48:57 + → module: 'TaskScheduler' +2025-10-24 01:48:57.377 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:49:07.401 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:49:07 + → module: 'TaskScheduler' +2025-10-24 01:49:07.401 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:49:17.409 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:49:17 + → module: 'TaskScheduler' +2025-10-24 01:49:17.409 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:49:27.418 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:49:27 + → module: 'TaskScheduler' +2025-10-24 01:49:27.418 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:49:37.425 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:49:37 + → module: 'TaskScheduler' +2025-10-24 01:49:37.426 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:49:47.446 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:49:47 + → module: 'TaskScheduler' +2025-10-24 01:49:47.446 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:49:57.456 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:49:57 + → module: 'TaskScheduler' +2025-10-24 01:49:57.456 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:50:07.464 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:50:07 + → module: 'TaskScheduler' +2025-10-24 01:50:07.464 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:50:07.484 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:50:07.505 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 01:50:07.506 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:50:07.506 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 01:50:07.506 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 01:50:07.506 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 01:50:07.524 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 01:50:07.540 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 01:50:07.542 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 01:50:07.542 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:50:07.542 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:50:07.543 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 01:50:07.949 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:50:07.964 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:50:08.017 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:50:08.375 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:50:08.377 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 01:50:08.377 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.83秒 + → module: 'NewsAPIClient' +2025-10-24 01:50:08.378 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 01:50:08.379 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 01:50:08.380 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 01:50:08.381 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 01:50:08.383 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:50:08.383 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:50:08.383 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.88秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 01:50:08.392 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 01:50:08.392 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:50:17.508 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:50:17 + → module: 'TaskScheduler' +2025-10-24 01:50:17.508 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:50:27.528 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:50:27 + → module: 'TaskScheduler' +2025-10-24 01:50:27.528 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:50:37.554 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:50:37 + → module: 'TaskScheduler' +2025-10-24 01:50:37.554 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:50:47.562 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:50:47 + → module: 'TaskScheduler' +2025-10-24 01:50:47.562 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:50:57.570 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:50:57 + → module: 'TaskScheduler' +2025-10-24 01:50:57.570 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:51:07.579 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:51:07 + → module: 'TaskScheduler' +2025-10-24 01:51:07.579 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:51:17.611 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:51:17 + → module: 'TaskScheduler' +2025-10-24 01:51:17.611 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:51:27.618 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:51:27 + → module: 'TaskScheduler' +2025-10-24 01:51:27.618 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:51:37.626 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:51:37 + → module: 'TaskScheduler' +2025-10-24 01:51:37.626 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:51:47.634 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:51:47 + → module: 'TaskScheduler' +2025-10-24 01:51:47.634 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:51:57.647 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:51:57 + → module: 'TaskScheduler' +2025-10-24 01:51:57.647 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:52:07.654 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:52:07 + → module: 'TaskScheduler' +2025-10-24 01:52:07.654 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:52:17.684 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:52:17 + → module: 'TaskScheduler' +2025-10-24 01:52:17.685 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:52:27.692 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:52:27 + → module: 'TaskScheduler' +2025-10-24 01:52:27.692 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:52:37.701 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:52:37 + → module: 'TaskScheduler' +2025-10-24 01:52:37.701 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:52:47.727 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:52:47 + → module: 'TaskScheduler' +2025-10-24 01:52:47.727 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:52:57.735 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:52:57 + → module: 'TaskScheduler' +2025-10-24 01:52:57.735 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:53:07.754 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:53:07 + → module: 'TaskScheduler' +2025-10-24 01:53:07.754 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:53:17.763 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:53:17 + → module: 'TaskScheduler' +2025-10-24 01:53:17.764 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:53:27.774 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:53:27 + → module: 'TaskScheduler' +2025-10-24 01:53:27.775 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:53:37.784 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:53:37 + → module: 'TaskScheduler' +2025-10-24 01:53:37.784 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:53:47.791 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:53:47 + → module: 'TaskScheduler' +2025-10-24 01:53:47.791 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:53:57.816 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:53:57 + → module: 'TaskScheduler' +2025-10-24 01:53:57.816 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:54:07.824 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:54:07 + → module: 'TaskScheduler' +2025-10-24 01:54:07.824 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:54:17.833 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:54:17 + → module: 'TaskScheduler' +2025-10-24 01:54:17.833 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:54:27.842 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:54:27 + → module: 'TaskScheduler' +2025-10-24 01:54:27.842 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:54:37.849 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:54:37 + → module: 'TaskScheduler' +2025-10-24 01:54:37.849 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:54:47.857 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:54:47 + → module: 'TaskScheduler' +2025-10-24 01:54:47.857 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:54:57.865 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:54:57 + → module: 'TaskScheduler' +2025-10-24 01:54:57.865 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:55:07.889 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:55:07 + → module: 'TaskScheduler' +2025-10-24 01:55:07.889 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:55:07.897 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:55:07.931 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 01:55:07.931 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:55:07.932 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 01:55:07.932 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 01:55:07.932 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 01:55:07.937 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 01:55:07.955 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 01:55:07.955 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 01:55:07.956 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:55:07.956 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:55:07.956 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 01:55:08.340 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:55:08.353 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:55:08.403 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:55:08.643 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 01:55:08.645 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 01:55:08.646 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.69秒 + → module: 'NewsAPIClient' +2025-10-24 01:55:08.646 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 01:55:08.647 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 01:55:08.648 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 01:55:08.649 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 01:55:08.650 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:55:08.650 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 01:55:08.652 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.72秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 01:55:08.676 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 01:55:08.676 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 01:55:17.934 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:55:17 + → module: 'TaskScheduler' +2025-10-24 01:55:17.934 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:55:27.956 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:55:27 + → module: 'TaskScheduler' +2025-10-24 01:55:27.957 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:55:37.978 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:55:37 + → module: 'TaskScheduler' +2025-10-24 01:55:37.979 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:55:47.989 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:55:47 + → module: 'TaskScheduler' +2025-10-24 01:55:47.989 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:55:57.995 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:55:57 + → module: 'TaskScheduler' +2025-10-24 01:55:57.995 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:56:08.005 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:56:08 + → module: 'TaskScheduler' +2025-10-24 01:56:08.005 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:56:18.036 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:56:18 + → module: 'TaskScheduler' +2025-10-24 01:56:18.036 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:56:28.053 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:56:28 + → module: 'TaskScheduler' +2025-10-24 01:56:28.054 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:56:38.065 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:56:38 + → module: 'TaskScheduler' +2025-10-24 01:56:38.065 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:56:48.074 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:56:48 + → module: 'TaskScheduler' +2025-10-24 01:56:48.074 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:56:58.082 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:56:58 + → module: 'TaskScheduler' +2025-10-24 01:56:58.082 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:57:08.109 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:57:08 + → module: 'TaskScheduler' +2025-10-24 01:57:08.109 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:57:18.118 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:57:18 + → module: 'TaskScheduler' +2025-10-24 01:57:18.118 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:57:28.126 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:57:28 + → module: 'TaskScheduler' +2025-10-24 01:57:28.126 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:57:38.155 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:57:38 + → module: 'TaskScheduler' +2025-10-24 01:57:38.155 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:57:48.164 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:57:48 + → module: 'TaskScheduler' +2025-10-24 01:57:48.164 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:57:58.194 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:57:58 + → module: 'TaskScheduler' +2025-10-24 01:57:58.194 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:58:08.202 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:58:08 + → module: 'TaskScheduler' +2025-10-24 01:58:08.202 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:58:18.209 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:58:18 + → module: 'TaskScheduler' +2025-10-24 01:58:18.209 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:58:28.232 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:58:28 + → module: 'TaskScheduler' +2025-10-24 01:58:28.232 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:58:38.240 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:58:38 + → module: 'TaskScheduler' +2025-10-24 01:58:38.240 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:58:48.272 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:58:48 + → module: 'TaskScheduler' +2025-10-24 01:58:48.272 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:58:58.283 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:58:58 + → module: 'TaskScheduler' +2025-10-24 01:58:58.283 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:59:08.308 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:59:08 + → module: 'TaskScheduler' +2025-10-24 01:59:08.308 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:59:18.319 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:59:18 + → module: 'TaskScheduler' +2025-10-24 01:59:18.319 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:59:28.328 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:59:28 + → module: 'TaskScheduler' +2025-10-24 01:59:28.328 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:59:38.358 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:59:38 + → module: 'TaskScheduler' +2025-10-24 01:59:38.358 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:59:48.390 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:59:48 + → module: 'TaskScheduler' +2025-10-24 01:59:48.390 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 01:59:58.398 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 01:59:58 + → module: 'TaskScheduler' +2025-10-24 01:59:58.398 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:00:08.406 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:00:08 + → module: 'TaskScheduler' +2025-10-24 02:00:08.407 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:00:08.440 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:00:08.477 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 02:00:08.478 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:00:08.478 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 02:00:08.478 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 02:00:08.478 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 02:00:08.493 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 02:00:08.508 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 02:00:08.509 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 02:00:08.509 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:00:08.509 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:00:08.511 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 02:00:08.955 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:00:08.969 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:00:08.980 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:00:09.299 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:00:09.301 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 02:00:09.302 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.79秒 + → module: 'NewsAPIClient' +2025-10-24 02:00:09.302 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 02:00:09.303 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 02:00:09.304 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 02:00:09.305 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 02:00:09.307 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:00:09.307 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:00:09.307 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.83秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 02:00:09.316 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 02:00:09.316 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:00:18.479 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:00:18 + → module: 'TaskScheduler' +2025-10-24 02:00:18.479 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:00:28.487 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:00:28 + → module: 'TaskScheduler' +2025-10-24 02:00:28.487 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:00:38.494 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:00:38 + → module: 'TaskScheduler' +2025-10-24 02:00:38.494 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:00:48.502 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:00:48 + → module: 'TaskScheduler' +2025-10-24 02:00:48.502 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:00:58.509 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:00:58 + → module: 'TaskScheduler' +2025-10-24 02:00:58.509 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:01:08.526 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:01:08 + → module: 'TaskScheduler' +2025-10-24 02:01:08.526 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:01:18.545 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:01:18 + → module: 'TaskScheduler' +2025-10-24 02:01:18.545 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:01:28.554 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:01:28 + → module: 'TaskScheduler' +2025-10-24 02:01:28.555 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:01:38.567 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:01:38 + → module: 'TaskScheduler' +2025-10-24 02:01:38.567 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:01:48.576 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:01:48 + → module: 'TaskScheduler' +2025-10-24 02:01:48.576 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:01:58.583 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:01:58 + → module: 'TaskScheduler' +2025-10-24 02:01:58.583 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:02:08.591 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:02:08 + → module: 'TaskScheduler' +2025-10-24 02:02:08.591 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:02:18.620 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:02:18 + → module: 'TaskScheduler' +2025-10-24 02:02:18.620 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:02:28.627 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:02:28 + → module: 'TaskScheduler' +2025-10-24 02:02:28.627 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:02:38.650 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:02:38 + → module: 'TaskScheduler' +2025-10-24 02:02:38.650 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:02:48.659 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:02:48 + → module: 'TaskScheduler' +2025-10-24 02:02:48.659 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:02:58.687 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:02:58 + → module: 'TaskScheduler' +2025-10-24 02:02:58.687 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:03:08.712 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:03:08 + → module: 'TaskScheduler' +2025-10-24 02:03:08.712 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:03:18.722 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:03:18 + → module: 'TaskScheduler' +2025-10-24 02:03:18.722 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:03:28.729 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:03:28 + → module: 'TaskScheduler' +2025-10-24 02:03:28.729 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:03:38.739 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:03:38 + → module: 'TaskScheduler' +2025-10-24 02:03:38.739 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:03:48.747 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:03:48 + → module: 'TaskScheduler' +2025-10-24 02:03:48.748 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:03:58.755 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:03:58 + → module: 'TaskScheduler' +2025-10-24 02:03:58.755 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:04:08.775 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:04:08 + → module: 'TaskScheduler' +2025-10-24 02:04:08.775 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:04:18.782 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:04:18 + → module: 'TaskScheduler' +2025-10-24 02:04:18.783 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:04:28.794 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:04:28 + → module: 'TaskScheduler' +2025-10-24 02:04:28.794 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:04:38.822 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:04:38 + → module: 'TaskScheduler' +2025-10-24 02:04:38.822 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:04:48.828 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:04:48 + → module: 'TaskScheduler' +2025-10-24 02:04:48.828 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:04:58.836 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:04:58 + → module: 'TaskScheduler' +2025-10-24 02:04:58.836 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:05:08.844 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:05:08 + → module: 'TaskScheduler' +2025-10-24 02:05:08.844 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:05:08.870 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:05:08.901 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 02:05:08.902 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:05:08.902 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 02:05:08.902 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 02:05:08.902 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 02:05:08.928 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 02:05:08.931 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 02:05:08.932 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 02:05:08.932 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:05:08.932 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:05:08.933 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 02:05:09.381 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:05:09.394 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:05:09.406 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:05:09.725 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:05:09.727 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 02:05:09.727 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.79秒 + → module: 'NewsAPIClient' +2025-10-24 02:05:09.728 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 02:05:09.729 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 02:05:09.731 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 02:05:09.733 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 02:05:09.736 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:05:09.737 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:05:09.737 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.83秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 02:05:09.774 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 02:05:09.775 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:05:18.904 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:05:18 + → module: 'TaskScheduler' +2025-10-24 02:05:18.904 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:05:28.927 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:05:28 + → module: 'TaskScheduler' +2025-10-24 02:05:28.927 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:05:38.935 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:05:38 + → module: 'TaskScheduler' +2025-10-24 02:05:38.936 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:05:48.958 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:05:48 + → module: 'TaskScheduler' +2025-10-24 02:05:48.958 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:05:58.970 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:05:58 + → module: 'TaskScheduler' +2025-10-24 02:05:58.970 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:06:08.978 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:06:08 + → module: 'TaskScheduler' +2025-10-24 02:06:08.978 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:06:18.986 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:06:18 + → module: 'TaskScheduler' +2025-10-24 02:06:18.986 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:06:28.993 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:06:28 + → module: 'TaskScheduler' +2025-10-24 02:06:28.993 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:06:39.000 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:06:39 + → module: 'TaskScheduler' +2025-10-24 02:06:39.000 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:06:49.033 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:06:49 + → module: 'TaskScheduler' +2025-10-24 02:06:49.034 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:06:59.042 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:06:59 + → module: 'TaskScheduler' +2025-10-24 02:06:59.042 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:07:09.062 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:07:09 + → module: 'TaskScheduler' +2025-10-24 02:07:09.062 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:07:19.069 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:07:19 + → module: 'TaskScheduler' +2025-10-24 02:07:19.069 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:07:29.076 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:07:29 + → module: 'TaskScheduler' +2025-10-24 02:07:29.077 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:07:39.084 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:07:39 + → module: 'TaskScheduler' +2025-10-24 02:07:39.084 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:07:49.093 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:07:49 + → module: 'TaskScheduler' +2025-10-24 02:07:49.093 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:07:59.101 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:07:59 + → module: 'TaskScheduler' +2025-10-24 02:07:59.101 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:08:09.126 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:08:09 + → module: 'TaskScheduler' +2025-10-24 02:08:09.126 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:08:19.135 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:08:19 + → module: 'TaskScheduler' +2025-10-24 02:08:19.135 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:08:29.143 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:08:29 + → module: 'TaskScheduler' +2025-10-24 02:08:29.143 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:08:29.170 | INFO | main:87 - 小时任务统计 + → module: 'Main' + → 总任务数: 12 + → 成功: 12 + → 失败: 0 +2025-10-24 02:08:39.171 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:08:39 + → module: 'TaskScheduler' +2025-10-24 02:08:39.171 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:08:49.205 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:08:49 + → module: 'TaskScheduler' +2025-10-24 02:08:49.205 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:08:59.239 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:08:59 + → module: 'TaskScheduler' +2025-10-24 02:08:59.239 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:09:09.267 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:09:09 + → module: 'TaskScheduler' +2025-10-24 02:09:09.267 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:09:19.297 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:09:19 + → module: 'TaskScheduler' +2025-10-24 02:09:19.297 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:09:29.307 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:09:29 + → module: 'TaskScheduler' +2025-10-24 02:09:29.307 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:09:39.314 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:09:39 + → module: 'TaskScheduler' +2025-10-24 02:09:39.314 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:09:49.322 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:09:49 + → module: 'TaskScheduler' +2025-10-24 02:09:49.322 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:09:59.329 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:09:59 + → module: 'TaskScheduler' +2025-10-24 02:09:59.329 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:10:09.339 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:10:09 + → module: 'TaskScheduler' +2025-10-24 02:10:09.339 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:10:09.347 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:10:09.355 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 02:10:09.357 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:10:09.357 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 02:10:09.357 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 02:10:09.357 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 02:10:09.361 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 02:10:09.365 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 02:10:09.366 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 02:10:09.366 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:10:09.366 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:10:09.367 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 02:10:09.784 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:10:09.803 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:10:09.837 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:10:10.117 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:10:10.119 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 02:10:10.120 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.75秒 + → module: 'NewsAPIClient' +2025-10-24 02:10:10.120 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 02:10:10.121 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 02:10:10.122 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 02:10:10.125 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 02:10:10.127 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:10:10.127 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:10:10.128 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.77秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 02:10:10.140 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 02:10:10.141 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:10:19.359 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:10:19 + → module: 'TaskScheduler' +2025-10-24 02:10:19.359 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:10:29.365 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:10:29 + → module: 'TaskScheduler' +2025-10-24 02:10:29.365 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:10:39.373 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:10:39 + → module: 'TaskScheduler' +2025-10-24 02:10:39.373 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:10:49.381 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:10:49 + → module: 'TaskScheduler' +2025-10-24 02:10:49.381 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:10:59.413 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:10:59 + → module: 'TaskScheduler' +2025-10-24 02:10:59.413 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:11:09.422 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:11:09 + → module: 'TaskScheduler' +2025-10-24 02:11:09.423 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:11:19.433 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:11:19 + → module: 'TaskScheduler' +2025-10-24 02:11:19.433 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:11:29.442 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:11:29 + → module: 'TaskScheduler' +2025-10-24 02:11:29.442 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:11:39.450 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:11:39 + → module: 'TaskScheduler' +2025-10-24 02:11:39.451 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:11:49.482 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:11:49 + → module: 'TaskScheduler' +2025-10-24 02:11:49.482 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:11:59.490 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:11:59 + → module: 'TaskScheduler' +2025-10-24 02:11:59.490 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:12:09.497 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:12:09 + → module: 'TaskScheduler' +2025-10-24 02:12:09.497 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:12:19.507 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:12:19 + → module: 'TaskScheduler' +2025-10-24 02:12:19.507 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:12:29.515 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:12:29 + → module: 'TaskScheduler' +2025-10-24 02:12:29.515 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:12:39.538 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:12:39 + → module: 'TaskScheduler' +2025-10-24 02:12:39.538 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:12:49.547 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:12:49 + → module: 'TaskScheduler' +2025-10-24 02:12:49.547 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:12:59.569 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:12:59 + → module: 'TaskScheduler' +2025-10-24 02:12:59.569 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:13:09.592 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:13:09 + → module: 'TaskScheduler' +2025-10-24 02:13:09.592 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:13:19.601 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:13:19 + → module: 'TaskScheduler' +2025-10-24 02:13:19.601 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:13:29.609 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:13:29 + → module: 'TaskScheduler' +2025-10-24 02:13:29.609 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:13:39.642 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:13:39 + → module: 'TaskScheduler' +2025-10-24 02:13:39.642 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:13:49.663 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:13:49 + → module: 'TaskScheduler' +2025-10-24 02:13:49.663 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:13:59.691 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:13:59 + → module: 'TaskScheduler' +2025-10-24 02:13:59.691 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:14:09.716 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:14:09 + → module: 'TaskScheduler' +2025-10-24 02:14:09.716 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:14:19.724 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:14:19 + → module: 'TaskScheduler' +2025-10-24 02:14:19.724 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:14:29.746 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:14:29 + → module: 'TaskScheduler' +2025-10-24 02:14:29.746 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:14:39.753 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:14:39 + → module: 'TaskScheduler' +2025-10-24 02:14:39.753 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:14:49.762 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:14:49 + → module: 'TaskScheduler' +2025-10-24 02:14:49.762 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:14:59.775 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:14:59 + → module: 'TaskScheduler' +2025-10-24 02:14:59.775 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:15:09.796 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:15:09 + → module: 'TaskScheduler' +2025-10-24 02:15:09.796 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:15:09.804 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:15:09.837 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 02:15:09.837 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:15:09.838 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 02:15:09.838 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 02:15:09.838 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 02:15:09.841 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 02:15:09.843 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 02:15:09.844 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 02:15:09.844 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:15:09.844 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:15:09.845 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 02:15:10.250 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:15:10.261 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:15:10.288 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:15:10.563 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:15:10.565 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 02:15:10.565 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.72秒 + → module: 'NewsAPIClient' +2025-10-24 02:15:10.565 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 02:15:10.567 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 02:15:10.568 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 02:15:10.568 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 02:15:10.571 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:15:10.571 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:15:10.571 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.73秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 02:15:10.593 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 02:15:10.594 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:15:19.839 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:15:19 + → module: 'TaskScheduler' +2025-10-24 02:15:19.839 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:15:29.867 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:15:29 + → module: 'TaskScheduler' +2025-10-24 02:15:29.867 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:15:39.900 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:15:39 + → module: 'TaskScheduler' +2025-10-24 02:15:39.900 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:15:49.908 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:15:49 + → module: 'TaskScheduler' +2025-10-24 02:15:49.908 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:15:59.936 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:15:59 + → module: 'TaskScheduler' +2025-10-24 02:15:59.936 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:16:09.945 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:16:09 + → module: 'TaskScheduler' +2025-10-24 02:16:09.945 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:16:19.967 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:16:19 + → module: 'TaskScheduler' +2025-10-24 02:16:19.967 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:16:29.989 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:16:29 + → module: 'TaskScheduler' +2025-10-24 02:16:29.990 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:16:40.002 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:16:40 + → module: 'TaskScheduler' +2025-10-24 02:16:40.002 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:16:50.024 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:16:50 + → module: 'TaskScheduler' +2025-10-24 02:16:50.024 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:17:00.051 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:17:00 + → module: 'TaskScheduler' +2025-10-24 02:17:00.051 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:17:10.059 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:17:10 + → module: 'TaskScheduler' +2025-10-24 02:17:10.059 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:17:20.087 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:17:20 + → module: 'TaskScheduler' +2025-10-24 02:17:20.087 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:17:30.119 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:17:30 + → module: 'TaskScheduler' +2025-10-24 02:17:30.119 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:17:40.127 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:17:40 + → module: 'TaskScheduler' +2025-10-24 02:17:40.127 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:17:50.135 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:17:50 + → module: 'TaskScheduler' +2025-10-24 02:17:50.135 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:18:00.144 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:18:00 + → module: 'TaskScheduler' +2025-10-24 02:18:00.144 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:18:10.152 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:18:10 + → module: 'TaskScheduler' +2025-10-24 02:18:10.152 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:18:20.184 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:18:20 + → module: 'TaskScheduler' +2025-10-24 02:18:20.184 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:18:30.195 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:18:30 + → module: 'TaskScheduler' +2025-10-24 02:18:30.196 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:18:40.204 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:18:40 + → module: 'TaskScheduler' +2025-10-24 02:18:40.204 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:18:50.211 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:18:50 + → module: 'TaskScheduler' +2025-10-24 02:18:50.212 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:19:00.220 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:19:00 + → module: 'TaskScheduler' +2025-10-24 02:19:00.221 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:19:10.230 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:19:10 + → module: 'TaskScheduler' +2025-10-24 02:19:10.230 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:19:20.237 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:19:20 + → module: 'TaskScheduler' +2025-10-24 02:19:20.237 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:19:30.245 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:19:30 + → module: 'TaskScheduler' +2025-10-24 02:19:30.245 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:19:40.253 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:19:40 + → module: 'TaskScheduler' +2025-10-24 02:19:40.253 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:19:50.260 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:19:50 + → module: 'TaskScheduler' +2025-10-24 02:19:50.260 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:20:00.267 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:20:00 + → module: 'TaskScheduler' +2025-10-24 02:20:00.267 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:20:00.276 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:20:00.296 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 02:20:00.297 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:20:00.297 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 02:20:00.297 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 02:20:00.297 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 02:20:00.313 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 02:20:00.330 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 02:20:00.331 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 02:20:00.332 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:20:00.332 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:20:00.332 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 02:20:00.799 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:20:00.817 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:20:00.835 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:20:01.165 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:20:01.166 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 02:20:01.167 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.83秒 + → module: 'NewsAPIClient' +2025-10-24 02:20:01.167 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 02:20:01.168 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 02:20:01.168 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 02:20:01.169 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 02:20:01.171 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:20:01.171 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:20:01.172 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.88秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 02:20:01.211 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 02:20:01.212 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:20:10.298 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:20:10 + → module: 'TaskScheduler' +2025-10-24 02:20:10.298 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:20:20.322 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:20:20 + → module: 'TaskScheduler' +2025-10-24 02:20:20.322 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:20:30.346 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:20:30 + → module: 'TaskScheduler' +2025-10-24 02:20:30.346 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:20:40.355 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:20:40 + → module: 'TaskScheduler' +2025-10-24 02:20:40.355 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:20:50.362 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:20:50 + → module: 'TaskScheduler' +2025-10-24 02:20:50.362 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:21:00.373 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:21:00 + → module: 'TaskScheduler' +2025-10-24 02:21:00.374 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:21:10.385 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:21:10 + → module: 'TaskScheduler' +2025-10-24 02:21:10.385 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:21:20.414 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:21:20 + → module: 'TaskScheduler' +2025-10-24 02:21:20.414 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:21:30.438 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:21:30 + → module: 'TaskScheduler' +2025-10-24 02:21:30.438 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:21:40.447 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:21:40 + → module: 'TaskScheduler' +2025-10-24 02:21:40.448 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:21:50.460 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:21:50 + → module: 'TaskScheduler' +2025-10-24 02:21:50.460 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:22:00.480 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:22:00 + → module: 'TaskScheduler' +2025-10-24 02:22:00.480 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:22:10.489 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:22:10 + → module: 'TaskScheduler' +2025-10-24 02:22:10.489 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:22:20.507 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:22:20 + → module: 'TaskScheduler' +2025-10-24 02:22:20.507 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:22:30.517 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:22:30 + → module: 'TaskScheduler' +2025-10-24 02:22:30.517 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:22:40.539 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:22:40 + → module: 'TaskScheduler' +2025-10-24 02:22:40.539 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:22:50.547 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:22:50 + → module: 'TaskScheduler' +2025-10-24 02:22:50.547 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:23:00.566 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:23:00 + → module: 'TaskScheduler' +2025-10-24 02:23:00.566 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:23:10.575 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:23:10 + → module: 'TaskScheduler' +2025-10-24 02:23:10.575 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:23:20.583 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:23:20 + → module: 'TaskScheduler' +2025-10-24 02:23:20.584 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:23:30.592 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:23:30 + → module: 'TaskScheduler' +2025-10-24 02:23:30.592 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:23:40.621 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:23:40 + → module: 'TaskScheduler' +2025-10-24 02:23:40.621 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:23:50.629 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:23:50 + → module: 'TaskScheduler' +2025-10-24 02:23:50.629 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:24:00.637 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:24:00 + → module: 'TaskScheduler' +2025-10-24 02:24:00.637 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:24:10.645 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:24:10 + → module: 'TaskScheduler' +2025-10-24 02:24:10.645 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:24:20.673 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:24:20 + → module: 'TaskScheduler' +2025-10-24 02:24:20.673 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:24:30.696 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:24:30 + → module: 'TaskScheduler' +2025-10-24 02:24:30.697 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:24:40.705 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:24:40 + → module: 'TaskScheduler' +2025-10-24 02:24:40.705 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:24:50.730 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:24:50 + → module: 'TaskScheduler' +2025-10-24 02:24:50.730 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:25:00.737 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:25:00 + → module: 'TaskScheduler' +2025-10-24 02:25:00.737 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:25:00.746 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:25:00.767 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 02:25:00.767 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:25:00.768 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 02:25:00.768 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 02:25:00.768 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 02:25:00.797 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 02:25:00.813 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 02:25:00.814 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 02:25:00.814 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:25:00.815 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:25:00.815 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 02:25:01.237 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:25:01.248 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:25:01.263 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:25:01.562 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:25:01.564 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 02:25:01.565 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.75秒 + → module: 'NewsAPIClient' +2025-10-24 02:25:01.565 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 02:25:01.566 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 02:25:01.567 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 02:25:01.568 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 02:25:01.570 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:25:01.570 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:25:01.571 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.80秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 02:25:01.618 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 02:25:01.618 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:25:10.769 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:25:10 + → module: 'TaskScheduler' +2025-10-24 02:25:10.769 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:25:20.801 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:25:20 + → module: 'TaskScheduler' +2025-10-24 02:25:20.801 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:25:30.836 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:25:30 + → module: 'TaskScheduler' +2025-10-24 02:25:30.836 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:25:40.846 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:25:40 + → module: 'TaskScheduler' +2025-10-24 02:25:40.846 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:25:50.878 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:25:50 + → module: 'TaskScheduler' +2025-10-24 02:25:50.878 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:26:00.885 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:26:00 + → module: 'TaskScheduler' +2025-10-24 02:26:00.885 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:26:10.911 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:26:10 + → module: 'TaskScheduler' +2025-10-24 02:26:10.911 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:26:20.936 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:26:20 + → module: 'TaskScheduler' +2025-10-24 02:26:20.936 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:26:30.968 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:26:30 + → module: 'TaskScheduler' +2025-10-24 02:26:30.968 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:26:40.976 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:26:40 + → module: 'TaskScheduler' +2025-10-24 02:26:40.976 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:26:50.985 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:26:50 + → module: 'TaskScheduler' +2025-10-24 02:26:50.985 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:27:00.993 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:27:00 + → module: 'TaskScheduler' +2025-10-24 02:27:00.993 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:27:11.000 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:27:11 + → module: 'TaskScheduler' +2025-10-24 02:27:11.000 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:27:21.011 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:27:21 + → module: 'TaskScheduler' +2025-10-24 02:27:21.011 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:27:31.041 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:27:31 + → module: 'TaskScheduler' +2025-10-24 02:27:31.041 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:27:41.052 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:27:41 + → module: 'TaskScheduler' +2025-10-24 02:27:41.052 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:27:51.063 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:27:51 + → module: 'TaskScheduler' +2025-10-24 02:27:51.063 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:28:01.070 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:28:01 + → module: 'TaskScheduler' +2025-10-24 02:28:01.070 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:28:11.078 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:28:11 + → module: 'TaskScheduler' +2025-10-24 02:28:11.078 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:28:21.085 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:28:21 + → module: 'TaskScheduler' +2025-10-24 02:28:21.085 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:28:31.092 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:28:31 + → module: 'TaskScheduler' +2025-10-24 02:28:31.092 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:28:41.100 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:28:41 + → module: 'TaskScheduler' +2025-10-24 02:28:41.100 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:28:51.108 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:28:51 + → module: 'TaskScheduler' +2025-10-24 02:28:51.108 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:29:01.117 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:29:01 + → module: 'TaskScheduler' +2025-10-24 02:29:01.117 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:29:11.125 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:29:11 + → module: 'TaskScheduler' +2025-10-24 02:29:11.125 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:29:21.134 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:29:21 + → module: 'TaskScheduler' +2025-10-24 02:29:21.134 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:29:31.161 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:29:31 + → module: 'TaskScheduler' +2025-10-24 02:29:31.161 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:29:41.188 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:29:41 + → module: 'TaskScheduler' +2025-10-24 02:29:41.188 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:29:51.195 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:29:51 + → module: 'TaskScheduler' +2025-10-24 02:29:51.195 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:30:01.215 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:30:01 + → module: 'TaskScheduler' +2025-10-24 02:30:01.215 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:30:01.239 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:30:01.283 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 02:30:01.284 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:30:01.284 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 02:30:01.284 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 02:30:01.284 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 02:30:01.309 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 02:30:01.326 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 02:30:01.326 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 02:30:01.327 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:30:01.327 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:30:01.327 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 02:30:01.804 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:30:01.815 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:30:01.826 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:30:02.101 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:30:02.103 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 02:30:02.103 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.77秒 + → module: 'NewsAPIClient' +2025-10-24 02:30:02.104 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 02:30:02.105 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 02:30:02.106 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 02:30:02.106 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 02:30:02.107 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:30:02.109 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:30:02.109 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.82秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 02:30:02.117 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 02:30:02.117 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:30:11.286 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:30:11 + → module: 'TaskScheduler' +2025-10-24 02:30:11.286 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:30:21.293 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:30:21 + → module: 'TaskScheduler' +2025-10-24 02:30:21.293 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:30:31.320 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:30:31 + → module: 'TaskScheduler' +2025-10-24 02:30:31.320 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:30:41.352 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:30:41 + → module: 'TaskScheduler' +2025-10-24 02:30:41.352 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:30:51.383 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:30:51 + → module: 'TaskScheduler' +2025-10-24 02:30:51.383 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:31:01.391 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:31:01 + → module: 'TaskScheduler' +2025-10-24 02:31:01.392 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:31:11.423 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:31:11 + → module: 'TaskScheduler' +2025-10-24 02:31:11.424 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:31:21.431 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:31:21 + → module: 'TaskScheduler' +2025-10-24 02:31:21.431 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:31:31.439 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:31:31 + → module: 'TaskScheduler' +2025-10-24 02:31:31.439 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:31:41.457 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:31:41 + → module: 'TaskScheduler' +2025-10-24 02:31:41.457 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:31:51.479 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:31:51 + → module: 'TaskScheduler' +2025-10-24 02:31:51.479 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:32:01.488 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:32:01 + → module: 'TaskScheduler' +2025-10-24 02:32:01.488 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:32:11.498 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:32:11 + → module: 'TaskScheduler' +2025-10-24 02:32:11.498 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:32:21.506 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:32:21 + → module: 'TaskScheduler' +2025-10-24 02:32:21.506 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:32:31.514 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:32:31 + → module: 'TaskScheduler' +2025-10-24 02:32:31.514 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:32:41.523 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:32:41 + → module: 'TaskScheduler' +2025-10-24 02:32:41.523 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:32:51.552 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:32:51 + → module: 'TaskScheduler' +2025-10-24 02:32:51.552 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:33:01.560 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:33:01 + → module: 'TaskScheduler' +2025-10-24 02:33:01.560 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:33:11.569 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:33:11 + → module: 'TaskScheduler' +2025-10-24 02:33:11.569 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:33:21.576 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:33:21 + → module: 'TaskScheduler' +2025-10-24 02:33:21.576 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:33:31.599 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:33:31 + → module: 'TaskScheduler' +2025-10-24 02:33:31.599 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:33:41.606 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:33:41 + → module: 'TaskScheduler' +2025-10-24 02:33:41.606 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:33:51.614 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:33:51 + → module: 'TaskScheduler' +2025-10-24 02:33:51.614 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:34:01.622 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:34:01 + → module: 'TaskScheduler' +2025-10-24 02:34:01.622 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:34:11.634 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:34:11 + → module: 'TaskScheduler' +2025-10-24 02:34:11.634 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:34:21.651 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:34:21 + → module: 'TaskScheduler' +2025-10-24 02:34:21.651 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:34:31.674 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:34:31 + → module: 'TaskScheduler' +2025-10-24 02:34:31.674 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:34:41.694 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:34:41 + → module: 'TaskScheduler' +2025-10-24 02:34:41.694 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:34:51.725 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:34:51 + → module: 'TaskScheduler' +2025-10-24 02:34:51.725 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:35:01.755 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:35:01 + → module: 'TaskScheduler' +2025-10-24 02:35:01.756 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:35:01.789 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:35:01.799 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 02:35:01.799 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:35:01.800 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 02:35:01.800 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 02:35:01.800 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 02:35:01.828 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 02:35:01.833 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 02:35:01.833 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 02:35:01.834 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:35:01.834 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:35:01.835 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 02:35:02.289 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:35:02.305 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:35:02.316 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:35:02.653 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:35:02.654 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 02:35:02.656 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.82秒 + → module: 'NewsAPIClient' +2025-10-24 02:35:02.656 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 02:35:02.657 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 02:35:02.658 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 02:35:02.659 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 02:35:02.660 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:35:02.660 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:35:02.661 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.86秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 02:35:02.669 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 02:35:02.670 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:35:11.802 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:35:11 + → module: 'TaskScheduler' +2025-10-24 02:35:11.802 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:35:21.810 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:35:21 + → module: 'TaskScheduler' +2025-10-24 02:35:21.810 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:35:31.817 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:35:31 + → module: 'TaskScheduler' +2025-10-24 02:35:31.818 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:35:41.828 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:35:41 + → module: 'TaskScheduler' +2025-10-24 02:35:41.828 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:35:51.836 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:35:51 + → module: 'TaskScheduler' +2025-10-24 02:35:51.836 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:36:01.862 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:36:01 + → module: 'TaskScheduler' +2025-10-24 02:36:01.862 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:36:11.869 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:36:11 + → module: 'TaskScheduler' +2025-10-24 02:36:11.869 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:36:21.877 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:36:21 + → module: 'TaskScheduler' +2025-10-24 02:36:21.877 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:36:31.886 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:36:31 + → module: 'TaskScheduler' +2025-10-24 02:36:31.886 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:36:41.920 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:36:41 + → module: 'TaskScheduler' +2025-10-24 02:36:41.920 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:36:51.928 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:36:51 + → module: 'TaskScheduler' +2025-10-24 02:36:51.928 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:37:01.936 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:37:01 + → module: 'TaskScheduler' +2025-10-24 02:37:01.936 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:37:11.944 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:37:11 + → module: 'TaskScheduler' +2025-10-24 02:37:11.944 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:37:21.953 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:37:21 + → module: 'TaskScheduler' +2025-10-24 02:37:21.954 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:37:31.965 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:37:31 + → module: 'TaskScheduler' +2025-10-24 02:37:31.965 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:37:41.996 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:37:41 + → module: 'TaskScheduler' +2025-10-24 02:37:41.996 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:37:52.006 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:37:52 + → module: 'TaskScheduler' +2025-10-24 02:37:52.006 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:38:02.035 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:38:02 + → module: 'TaskScheduler' +2025-10-24 02:38:02.035 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:38:12.056 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:38:12 + → module: 'TaskScheduler' +2025-10-24 02:38:12.056 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:38:22.063 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:38:22 + → module: 'TaskScheduler' +2025-10-24 02:38:22.063 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:38:32.073 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:38:32 + → module: 'TaskScheduler' +2025-10-24 02:38:32.073 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:38:42.081 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:38:42 + → module: 'TaskScheduler' +2025-10-24 02:38:42.081 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:38:52.090 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:38:52 + → module: 'TaskScheduler' +2025-10-24 02:38:52.090 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:39:02.100 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:39:02 + → module: 'TaskScheduler' +2025-10-24 02:39:02.100 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:39:12.133 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:39:12 + → module: 'TaskScheduler' +2025-10-24 02:39:12.133 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:39:22.141 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:39:22 + → module: 'TaskScheduler' +2025-10-24 02:39:22.141 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:39:32.149 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:39:32 + → module: 'TaskScheduler' +2025-10-24 02:39:32.149 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:39:42.177 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:39:42 + → module: 'TaskScheduler' +2025-10-24 02:39:42.177 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:39:52.188 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:39:52 + → module: 'TaskScheduler' +2025-10-24 02:39:52.188 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:40:02.195 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:40:02 + → module: 'TaskScheduler' +2025-10-24 02:40:02.195 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:40:02.203 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:40:02.229 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 02:40:02.230 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:40:02.230 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 02:40:02.230 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 02:40:02.232 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 02:40:02.235 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 02:40:02.254 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 02:40:02.255 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 02:40:02.256 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:40:02.256 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:40:02.256 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 02:40:02.706 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:40:02.734 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:40:02.744 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:40:03.028 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:40:03.030 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 02:40:03.030 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.77秒 + → module: 'NewsAPIClient' +2025-10-24 02:40:03.031 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 02:40:03.032 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 02:40:03.033 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 02:40:03.034 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 02:40:03.036 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:40:03.036 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:40:03.037 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.81秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 02:40:03.064 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 02:40:03.065 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:40:12.232 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:40:12 + → module: 'TaskScheduler' +2025-10-24 02:40:12.232 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:40:22.241 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:40:22 + → module: 'TaskScheduler' +2025-10-24 02:40:22.241 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:40:32.258 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:40:32 + → module: 'TaskScheduler' +2025-10-24 02:40:32.258 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:40:42.267 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:40:42 + → module: 'TaskScheduler' +2025-10-24 02:40:42.267 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:40:52.286 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:40:52 + → module: 'TaskScheduler' +2025-10-24 02:40:52.286 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:41:02.294 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:41:02 + → module: 'TaskScheduler' +2025-10-24 02:41:02.294 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:41:12.302 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:41:12 + → module: 'TaskScheduler' +2025-10-24 02:41:12.302 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:41:22.322 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:41:22 + → module: 'TaskScheduler' +2025-10-24 02:41:22.322 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:41:32.351 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:41:32 + → module: 'TaskScheduler' +2025-10-24 02:41:32.351 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:41:42.358 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:41:42 + → module: 'TaskScheduler' +2025-10-24 02:41:42.359 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:41:52.381 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:41:52 + → module: 'TaskScheduler' +2025-10-24 02:41:52.381 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:42:02.392 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:42:02 + → module: 'TaskScheduler' +2025-10-24 02:42:02.392 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:42:12.400 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:42:12 + → module: 'TaskScheduler' +2025-10-24 02:42:12.400 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:42:22.408 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:42:22 + → module: 'TaskScheduler' +2025-10-24 02:42:22.409 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:42:32.416 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:42:32 + → module: 'TaskScheduler' +2025-10-24 02:42:32.417 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:42:42.424 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:42:42 + → module: 'TaskScheduler' +2025-10-24 02:42:42.424 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:42:52.431 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:42:52 + → module: 'TaskScheduler' +2025-10-24 02:42:52.431 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:43:02.439 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:43:02 + → module: 'TaskScheduler' +2025-10-24 02:43:02.440 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:43:12.472 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:43:12 + → module: 'TaskScheduler' +2025-10-24 02:43:12.472 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:43:22.480 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:43:22 + → module: 'TaskScheduler' +2025-10-24 02:43:22.480 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:43:32.487 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:43:32 + → module: 'TaskScheduler' +2025-10-24 02:43:32.487 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:43:42.506 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:43:42 + → module: 'TaskScheduler' +2025-10-24 02:43:42.506 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:43:52.513 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:43:52 + → module: 'TaskScheduler' +2025-10-24 02:43:52.513 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:44:02.520 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:44:02 + → module: 'TaskScheduler' +2025-10-24 02:44:02.520 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:44:12.526 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:44:12 + → module: 'TaskScheduler' +2025-10-24 02:44:12.526 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:44:22.536 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:44:22 + → module: 'TaskScheduler' +2025-10-24 02:44:22.536 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:44:32.544 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:44:32 + → module: 'TaskScheduler' +2025-10-24 02:44:32.544 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:44:42.552 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:44:42 + → module: 'TaskScheduler' +2025-10-24 02:44:42.552 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:44:52.561 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:44:52 + → module: 'TaskScheduler' +2025-10-24 02:44:52.561 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:45:02.589 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:45:02 + → module: 'TaskScheduler' +2025-10-24 02:45:02.589 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:45:02.597 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:45:02.626 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 02:45:02.626 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:45:02.627 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 02:45:02.627 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 02:45:02.627 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 02:45:02.651 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 02:45:02.656 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 02:45:02.656 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 02:45:02.657 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:45:02.658 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:45:02.658 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 02:45:03.076 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:45:03.098 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:45:03.112 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:45:03.383 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:45:03.384 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 02:45:03.384 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.73秒 + → module: 'NewsAPIClient' +2025-10-24 02:45:03.386 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 02:45:03.386 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 02:45:03.387 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 02:45:03.388 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 02:45:03.390 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:45:03.391 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:45:03.391 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.76秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 02:45:03.439 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 02:45:03.439 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:45:12.629 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:45:12 + → module: 'TaskScheduler' +2025-10-24 02:45:12.629 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:45:22.636 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:45:22 + → module: 'TaskScheduler' +2025-10-24 02:45:22.636 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:45:32.643 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:45:32 + → module: 'TaskScheduler' +2025-10-24 02:45:32.643 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:45:42.665 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:45:42 + → module: 'TaskScheduler' +2025-10-24 02:45:42.665 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:45:52.692 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:45:52 + → module: 'TaskScheduler' +2025-10-24 02:45:52.693 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:46:02.706 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:46:02 + → module: 'TaskScheduler' +2025-10-24 02:46:02.706 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:46:12.713 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:46:12 + → module: 'TaskScheduler' +2025-10-24 02:46:12.713 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:46:22.721 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:46:22 + → module: 'TaskScheduler' +2025-10-24 02:46:22.721 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:46:32.729 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:46:32 + → module: 'TaskScheduler' +2025-10-24 02:46:32.729 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:46:42.751 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:46:42 + → module: 'TaskScheduler' +2025-10-24 02:46:42.751 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:46:52.759 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:46:52 + → module: 'TaskScheduler' +2025-10-24 02:46:52.759 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:47:02.767 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:47:02 + → module: 'TaskScheduler' +2025-10-24 02:47:02.767 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:47:12.775 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:47:12 + → module: 'TaskScheduler' +2025-10-24 02:47:12.775 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:47:22.799 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:47:22 + → module: 'TaskScheduler' +2025-10-24 02:47:22.799 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:47:32.810 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:47:32 + → module: 'TaskScheduler' +2025-10-24 02:47:32.810 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:47:42.817 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:47:42 + → module: 'TaskScheduler' +2025-10-24 02:47:42.817 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:47:52.824 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:47:52 + → module: 'TaskScheduler' +2025-10-24 02:47:52.824 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:48:02.834 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:48:02 + → module: 'TaskScheduler' +2025-10-24 02:48:02.834 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:48:12.842 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:48:12 + → module: 'TaskScheduler' +2025-10-24 02:48:12.842 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:48:22.869 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:48:22 + → module: 'TaskScheduler' +2025-10-24 02:48:22.869 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:48:32.895 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:48:32 + → module: 'TaskScheduler' +2025-10-24 02:48:32.895 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:48:42.915 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:48:42 + → module: 'TaskScheduler' +2025-10-24 02:48:42.915 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:48:52.922 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:48:52 + → module: 'TaskScheduler' +2025-10-24 02:48:52.922 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:49:02.930 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:49:02 + → module: 'TaskScheduler' +2025-10-24 02:49:02.930 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:49:12.936 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:49:12 + → module: 'TaskScheduler' +2025-10-24 02:49:12.936 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:49:22.946 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:49:22 + → module: 'TaskScheduler' +2025-10-24 02:49:22.946 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:49:32.953 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:49:32 + → module: 'TaskScheduler' +2025-10-24 02:49:32.953 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:49:42.960 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:49:42 + → module: 'TaskScheduler' +2025-10-24 02:49:42.960 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:49:52.970 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:49:52 + → module: 'TaskScheduler' +2025-10-24 02:49:52.970 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:50:03.001 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:50:03 + → module: 'TaskScheduler' +2025-10-24 02:50:03.001 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:50:03.009 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:50:03.031 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 02:50:03.032 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:50:03.032 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 02:50:03.032 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 02:50:03.033 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 02:50:03.058 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 02:50:03.063 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 02:50:03.063 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 02:50:03.064 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:50:03.065 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:50:03.065 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 02:50:03.514 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:50:03.534 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:50:03.549 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:50:03.875 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:50:03.876 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 02:50:03.878 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.81秒 + → module: 'NewsAPIClient' +2025-10-24 02:50:03.878 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 02:50:03.879 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 02:50:03.880 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 02:50:03.880 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 02:50:03.882 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:50:03.882 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:50:03.882 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.85秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 02:50:03.891 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 02:50:03.892 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:50:13.034 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:50:13 + → module: 'TaskScheduler' +2025-10-24 02:50:13.034 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:50:23.041 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:50:23 + → module: 'TaskScheduler' +2025-10-24 02:50:23.041 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:50:33.053 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:50:33 + → module: 'TaskScheduler' +2025-10-24 02:50:33.053 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:50:43.062 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:50:43 + → module: 'TaskScheduler' +2025-10-24 02:50:43.062 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:50:53.070 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:50:53 + → module: 'TaskScheduler' +2025-10-24 02:50:53.070 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:51:03.077 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:51:03 + → module: 'TaskScheduler' +2025-10-24 02:51:03.077 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:51:13.088 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:51:13 + → module: 'TaskScheduler' +2025-10-24 02:51:13.088 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:51:23.108 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:51:23 + → module: 'TaskScheduler' +2025-10-24 02:51:23.108 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:51:33.118 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:51:33 + → module: 'TaskScheduler' +2025-10-24 02:51:33.118 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:51:43.125 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:51:43 + → module: 'TaskScheduler' +2025-10-24 02:51:43.125 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:51:53.149 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:51:53 + → module: 'TaskScheduler' +2025-10-24 02:51:53.149 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:52:03.173 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:52:03 + → module: 'TaskScheduler' +2025-10-24 02:52:03.173 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:52:13.190 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:52:13 + → module: 'TaskScheduler' +2025-10-24 02:52:13.190 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:52:23.216 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:52:23 + → module: 'TaskScheduler' +2025-10-24 02:52:23.216 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:52:33.240 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:52:33 + → module: 'TaskScheduler' +2025-10-24 02:52:33.240 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:52:43.263 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:52:43 + → module: 'TaskScheduler' +2025-10-24 02:52:43.263 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:52:53.281 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:52:53 + → module: 'TaskScheduler' +2025-10-24 02:52:53.281 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:53:03.288 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:53:03 + → module: 'TaskScheduler' +2025-10-24 02:53:03.288 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:53:13.298 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:53:13 + → module: 'TaskScheduler' +2025-10-24 02:53:13.299 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:53:23.308 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:53:23 + → module: 'TaskScheduler' +2025-10-24 02:53:23.308 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:53:33.317 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:53:33 + → module: 'TaskScheduler' +2025-10-24 02:53:33.317 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:53:43.346 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:53:43 + → module: 'TaskScheduler' +2025-10-24 02:53:43.346 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:53:53.377 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:53:53 + → module: 'TaskScheduler' +2025-10-24 02:53:53.378 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:54:03.402 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:54:03 + → module: 'TaskScheduler' +2025-10-24 02:54:03.402 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:54:13.420 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:54:13 + → module: 'TaskScheduler' +2025-10-24 02:54:13.420 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:54:23.429 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:54:23 + → module: 'TaskScheduler' +2025-10-24 02:54:23.429 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:54:33.437 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:54:33 + → module: 'TaskScheduler' +2025-10-24 02:54:33.437 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:54:43.445 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:54:43 + → module: 'TaskScheduler' +2025-10-24 02:54:43.445 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:54:53.470 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:54:53 + → module: 'TaskScheduler' +2025-10-24 02:54:53.470 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:55:03.478 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:55:03 + → module: 'TaskScheduler' +2025-10-24 02:55:03.478 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:55:03.501 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:55:03.551 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 02:55:03.552 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:55:03.552 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 02:55:03.552 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 02:55:03.552 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 02:55:03.556 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 02:55:03.576 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 02:55:03.576 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 02:55:03.576 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:55:03.578 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:55:03.578 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 02:55:04.000 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:55:04.013 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:55:04.060 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:55:04.373 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 02:55:04.375 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 02:55:04.376 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.80秒 + → module: 'NewsAPIClient' +2025-10-24 02:55:04.377 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 02:55:04.377 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 02:55:04.378 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 02:55:04.379 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 02:55:04.381 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:55:04.381 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 02:55:04.381 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.83秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 02:55:04.415 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 02:55:04.416 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 02:55:13.553 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:55:13 + → module: 'TaskScheduler' +2025-10-24 02:55:13.553 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:55:23.561 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:55:23 + → module: 'TaskScheduler' +2025-10-24 02:55:23.561 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:55:33.570 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:55:33 + → module: 'TaskScheduler' +2025-10-24 02:55:33.570 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:55:43.579 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:55:43 + → module: 'TaskScheduler' +2025-10-24 02:55:43.579 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:55:53.606 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:55:53 + → module: 'TaskScheduler' +2025-10-24 02:55:53.607 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:56:03.615 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:56:03 + → module: 'TaskScheduler' +2025-10-24 02:56:03.615 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:56:13.625 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:56:13 + → module: 'TaskScheduler' +2025-10-24 02:56:13.625 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:56:23.633 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:56:23 + → module: 'TaskScheduler' +2025-10-24 02:56:23.633 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:56:33.643 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:56:33 + → module: 'TaskScheduler' +2025-10-24 02:56:33.643 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:56:43.670 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:56:43 + → module: 'TaskScheduler' +2025-10-24 02:56:43.670 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:56:53.679 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:56:53 + → module: 'TaskScheduler' +2025-10-24 02:56:53.679 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:57:03.699 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:57:03 + → module: 'TaskScheduler' +2025-10-24 02:57:03.699 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:57:13.708 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:57:13 + → module: 'TaskScheduler' +2025-10-24 02:57:13.708 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:57:23.729 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:57:23 + → module: 'TaskScheduler' +2025-10-24 02:57:23.729 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:57:33.737 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:57:33 + → module: 'TaskScheduler' +2025-10-24 02:57:33.737 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:57:43.746 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:57:43 + → module: 'TaskScheduler' +2025-10-24 02:57:43.746 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:57:53.755 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:57:53 + → module: 'TaskScheduler' +2025-10-24 02:57:53.755 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:58:03.787 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:58:03 + → module: 'TaskScheduler' +2025-10-24 02:58:03.787 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:58:13.795 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:58:13 + → module: 'TaskScheduler' +2025-10-24 02:58:13.795 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:58:23.806 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:58:23 + → module: 'TaskScheduler' +2025-10-24 02:58:23.807 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:58:33.836 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:58:33 + → module: 'TaskScheduler' +2025-10-24 02:58:33.836 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:58:43.847 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:58:43 + → module: 'TaskScheduler' +2025-10-24 02:58:43.847 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:58:53.857 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:58:53 + → module: 'TaskScheduler' +2025-10-24 02:58:53.857 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:59:03.886 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:59:03 + → module: 'TaskScheduler' +2025-10-24 02:59:03.886 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:59:13.905 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:59:13 + → module: 'TaskScheduler' +2025-10-24 02:59:13.905 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:59:23.914 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:59:23 + → module: 'TaskScheduler' +2025-10-24 02:59:23.915 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:59:33.923 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:59:33 + → module: 'TaskScheduler' +2025-10-24 02:59:33.923 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:59:43.943 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:59:43 + → module: 'TaskScheduler' +2025-10-24 02:59:43.943 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 02:59:53.951 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 02:59:53 + → module: 'TaskScheduler' +2025-10-24 02:59:53.951 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:00:03.958 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:00:03 + → module: 'TaskScheduler' +2025-10-24 03:00:03.959 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:00:03.977 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:00:03.999 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 03:00:04.000 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:00:04.000 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 03:00:04.000 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 03:00:04.000 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 03:00:04.005 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 03:00:04.020 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 03:00:04.020 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 03:00:04.020 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:00:04.020 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:00:04.021 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 03:00:04.398 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:00:04.442 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:00:04.469 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:00:04.720 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:00:04.721 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 03:00:04.723 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.70秒 + → module: 'NewsAPIClient' +2025-10-24 03:00:04.723 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 03:00:04.724 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 03:00:04.725 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 03:00:04.725 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 03:00:04.727 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:00:04.727 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:00:04.727 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.73秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 03:00:04.736 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 03:00:04.737 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:00:14.002 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:00:14 + → module: 'TaskScheduler' +2025-10-24 03:00:14.002 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:00:24.013 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:00:24 + → module: 'TaskScheduler' +2025-10-24 03:00:24.013 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:00:34.021 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:00:34 + → module: 'TaskScheduler' +2025-10-24 03:00:34.021 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:00:44.030 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:00:44 + → module: 'TaskScheduler' +2025-10-24 03:00:44.030 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:00:54.041 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:00:54 + → module: 'TaskScheduler' +2025-10-24 03:00:54.041 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:01:04.048 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:01:04 + → module: 'TaskScheduler' +2025-10-24 03:01:04.049 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:01:14.057 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:01:14 + → module: 'TaskScheduler' +2025-10-24 03:01:14.057 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:01:24.064 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:01:24 + → module: 'TaskScheduler' +2025-10-24 03:01:24.064 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:01:34.072 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:01:34 + → module: 'TaskScheduler' +2025-10-24 03:01:34.072 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:01:44.081 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:01:44 + → module: 'TaskScheduler' +2025-10-24 03:01:44.081 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:01:54.090 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:01:54 + → module: 'TaskScheduler' +2025-10-24 03:01:54.090 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:02:04.121 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:02:04 + → module: 'TaskScheduler' +2025-10-24 03:02:04.121 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:02:14.129 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:02:14 + → module: 'TaskScheduler' +2025-10-24 03:02:14.130 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:02:24.153 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:02:24 + → module: 'TaskScheduler' +2025-10-24 03:02:24.153 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:02:34.164 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:02:34 + → module: 'TaskScheduler' +2025-10-24 03:02:34.164 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:02:44.173 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:02:44 + → module: 'TaskScheduler' +2025-10-24 03:02:44.173 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:02:54.181 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:02:54 + → module: 'TaskScheduler' +2025-10-24 03:02:54.181 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:03:04.204 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:03:04 + → module: 'TaskScheduler' +2025-10-24 03:03:04.204 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:03:14.212 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:03:14 + → module: 'TaskScheduler' +2025-10-24 03:03:14.212 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:03:24.220 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:03:24 + → module: 'TaskScheduler' +2025-10-24 03:03:24.220 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:03:34.227 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:03:34 + → module: 'TaskScheduler' +2025-10-24 03:03:34.227 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:03:44.235 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:03:44 + → module: 'TaskScheduler' +2025-10-24 03:03:44.235 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:03:54.242 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:03:54 + → module: 'TaskScheduler' +2025-10-24 03:03:54.242 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:04:04.252 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:04:04 + → module: 'TaskScheduler' +2025-10-24 03:04:04.252 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:04:14.278 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:04:14 + → module: 'TaskScheduler' +2025-10-24 03:04:14.278 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:04:24.309 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:04:24 + → module: 'TaskScheduler' +2025-10-24 03:04:24.309 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:04:34.316 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:04:34 + → module: 'TaskScheduler' +2025-10-24 03:04:34.316 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:04:44.324 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:04:44 + → module: 'TaskScheduler' +2025-10-24 03:04:44.324 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:04:54.354 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:04:54 + → module: 'TaskScheduler' +2025-10-24 03:04:54.354 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:05:04.372 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:05:04 + → module: 'TaskScheduler' +2025-10-24 03:05:04.372 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:05:04.399 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:05:04.448 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 03:05:04.449 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:05:04.449 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 03:05:04.449 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 03:05:04.449 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 03:05:04.474 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 03:05:04.478 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 03:05:04.479 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 03:05:04.479 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:05:04.480 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:05:04.480 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 03:05:04.939 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:05:04.950 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:05:04.960 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:05:05.271 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:05:05.273 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 03:05:05.274 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.79秒 + → module: 'NewsAPIClient' +2025-10-24 03:05:05.274 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 03:05:05.275 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 03:05:05.276 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 03:05:05.277 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 03:05:05.278 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:05:05.278 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:05:05.279 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.83秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 03:05:05.299 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 03:05:05.300 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:05:14.450 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:05:14 + → module: 'TaskScheduler' +2025-10-24 03:05:14.450 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:05:24.458 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:05:24 + → module: 'TaskScheduler' +2025-10-24 03:05:24.458 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:05:34.491 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:05:34 + → module: 'TaskScheduler' +2025-10-24 03:05:34.491 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:05:44.499 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:05:44 + → module: 'TaskScheduler' +2025-10-24 03:05:44.499 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:05:54.507 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:05:54 + → module: 'TaskScheduler' +2025-10-24 03:05:54.507 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:06:04.514 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:06:04 + → module: 'TaskScheduler' +2025-10-24 03:06:04.514 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:06:14.546 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:06:14 + → module: 'TaskScheduler' +2025-10-24 03:06:14.546 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:06:24.568 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:06:24 + → module: 'TaskScheduler' +2025-10-24 03:06:24.568 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:06:34.596 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:06:34 + → module: 'TaskScheduler' +2025-10-24 03:06:34.596 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:06:44.603 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:06:44 + → module: 'TaskScheduler' +2025-10-24 03:06:44.604 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:06:54.628 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:06:54 + → module: 'TaskScheduler' +2025-10-24 03:06:54.628 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:07:04.650 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:07:04 + → module: 'TaskScheduler' +2025-10-24 03:07:04.650 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:07:14.658 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:07:14 + → module: 'TaskScheduler' +2025-10-24 03:07:14.659 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:07:24.677 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:07:24 + → module: 'TaskScheduler' +2025-10-24 03:07:24.677 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:07:34.686 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:07:34 + → module: 'TaskScheduler' +2025-10-24 03:07:34.687 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:07:44.695 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:07:44 + → module: 'TaskScheduler' +2025-10-24 03:07:44.695 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:07:54.722 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:07:54 + → module: 'TaskScheduler' +2025-10-24 03:07:54.722 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:08:04.729 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:08:04 + → module: 'TaskScheduler' +2025-10-24 03:08:04.729 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:08:14.738 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:08:14 + → module: 'TaskScheduler' +2025-10-24 03:08:14.738 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:08:24.746 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:08:24 + → module: 'TaskScheduler' +2025-10-24 03:08:24.746 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:08:34.754 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:08:34 + → module: 'TaskScheduler' +2025-10-24 03:08:34.754 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:08:34.772 | INFO | main:87 - 小时任务统计 + → module: 'Main' + → 总任务数: 12 + → 成功: 12 + → 失败: 0 +2025-10-24 03:08:44.774 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:08:44 + → module: 'TaskScheduler' +2025-10-24 03:08:44.774 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:08:54.782 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:08:54 + → module: 'TaskScheduler' +2025-10-24 03:08:54.782 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:09:04.789 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:09:04 + → module: 'TaskScheduler' +2025-10-24 03:09:04.789 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:09:14.796 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:09:14 + → module: 'TaskScheduler' +2025-10-24 03:09:14.797 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:09:24.805 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:09:24 + → module: 'TaskScheduler' +2025-10-24 03:09:24.805 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:09:34.832 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:09:34 + → module: 'TaskScheduler' +2025-10-24 03:09:34.832 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:09:44.842 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:09:44 + → module: 'TaskScheduler' +2025-10-24 03:09:44.842 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:09:54.849 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:09:54 + → module: 'TaskScheduler' +2025-10-24 03:09:54.850 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:10:04.877 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:10:04 + → module: 'TaskScheduler' +2025-10-24 03:10:04.877 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:10:04.885 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:10:04.903 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 03:10:04.903 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:10:04.904 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 03:10:04.904 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 03:10:04.904 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 03:10:04.908 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 03:10:04.929 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 03:10:04.930 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 03:10:04.931 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:10:04.931 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:10:04.932 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 03:10:05.346 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:10:05.358 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:10:05.371 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:10:05.754 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:10:05.755 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 03:10:05.756 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.82秒 + → module: 'NewsAPIClient' +2025-10-24 03:10:05.756 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 03:10:05.757 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 03:10:05.758 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 03:10:05.759 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 03:10:05.761 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:10:05.761 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:10:05.762 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.86秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 03:10:05.770 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 03:10:05.770 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:10:14.906 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:10:14 + → module: 'TaskScheduler' +2025-10-24 03:10:14.906 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:10:24.932 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:10:24 + → module: 'TaskScheduler' +2025-10-24 03:10:24.932 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:10:34.940 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:10:34 + → module: 'TaskScheduler' +2025-10-24 03:10:34.940 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:10:44.949 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:10:44 + → module: 'TaskScheduler' +2025-10-24 03:10:44.949 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:10:54.967 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:10:54 + → module: 'TaskScheduler' +2025-10-24 03:10:54.967 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:11:04.990 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:11:04 + → module: 'TaskScheduler' +2025-10-24 03:11:04.990 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:11:14.997 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:11:14 + → module: 'TaskScheduler' +2025-10-24 03:11:14.997 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:11:25.025 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:11:25 + → module: 'TaskScheduler' +2025-10-24 03:11:25.025 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:11:35.033 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:11:35 + → module: 'TaskScheduler' +2025-10-24 03:11:35.033 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:11:45.041 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:11:45 + → module: 'TaskScheduler' +2025-10-24 03:11:45.041 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:11:55.049 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:11:55 + → module: 'TaskScheduler' +2025-10-24 03:11:55.049 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:12:05.057 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:12:05 + → module: 'TaskScheduler' +2025-10-24 03:12:05.057 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:12:15.065 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:12:15 + → module: 'TaskScheduler' +2025-10-24 03:12:15.065 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:12:25.085 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:12:25 + → module: 'TaskScheduler' +2025-10-24 03:12:25.085 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:12:35.120 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:12:35 + → module: 'TaskScheduler' +2025-10-24 03:12:35.120 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:12:45.143 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:12:45 + → module: 'TaskScheduler' +2025-10-24 03:12:45.143 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:12:55.152 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:12:55 + → module: 'TaskScheduler' +2025-10-24 03:12:55.152 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:13:05.179 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:13:05 + → module: 'TaskScheduler' +2025-10-24 03:13:05.179 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:13:15.193 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:13:15 + → module: 'TaskScheduler' +2025-10-24 03:13:15.193 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:13:25.220 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:13:25 + → module: 'TaskScheduler' +2025-10-24 03:13:25.220 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:13:35.231 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:13:35 + → module: 'TaskScheduler' +2025-10-24 03:13:35.231 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:13:45.238 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:13:45 + → module: 'TaskScheduler' +2025-10-24 03:13:45.239 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:13:55.250 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:13:55 + → module: 'TaskScheduler' +2025-10-24 03:13:55.250 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:14:05.272 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:14:05 + → module: 'TaskScheduler' +2025-10-24 03:14:05.272 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:14:15.279 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:14:15 + → module: 'TaskScheduler' +2025-10-24 03:14:15.280 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:14:25.307 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:14:25 + → module: 'TaskScheduler' +2025-10-24 03:14:25.308 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:14:35.315 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:14:35 + → module: 'TaskScheduler' +2025-10-24 03:14:35.315 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:14:45.324 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:14:45 + → module: 'TaskScheduler' +2025-10-24 03:14:45.324 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:14:55.347 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:14:55 + → module: 'TaskScheduler' +2025-10-24 03:14:55.348 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:15:05.369 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:15:05 + → module: 'TaskScheduler' +2025-10-24 03:15:05.369 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:15:05.399 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:15:05.421 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 03:15:05.422 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:15:05.422 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 03:15:05.423 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 03:15:05.423 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 03:15:05.429 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 03:15:05.434 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 03:15:05.435 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 03:15:05.435 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:15:05.436 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:15:05.436 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 03:15:05.842 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:15:05.880 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:15:05.907 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:15:06.229 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:15:06.232 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 03:15:06.232 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.80秒 + → module: 'NewsAPIClient' +2025-10-24 03:15:06.232 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 03:15:06.234 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 03:15:06.235 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 03:15:06.236 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 03:15:06.237 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:15:06.238 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:15:06.238 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.82秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 03:15:06.268 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 03:15:06.270 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:15:15.424 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:15:15 + → module: 'TaskScheduler' +2025-10-24 03:15:15.424 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:15:25.451 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:15:25 + → module: 'TaskScheduler' +2025-10-24 03:15:25.451 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:15:35.485 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:15:35 + → module: 'TaskScheduler' +2025-10-24 03:15:35.486 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:15:45.497 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:15:45 + → module: 'TaskScheduler' +2025-10-24 03:15:45.498 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:15:55.505 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:15:55 + → module: 'TaskScheduler' +2025-10-24 03:15:55.506 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:16:05.517 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:16:05 + → module: 'TaskScheduler' +2025-10-24 03:16:05.517 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:16:15.524 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:16:15 + → module: 'TaskScheduler' +2025-10-24 03:16:15.525 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:16:25.532 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:16:25 + → module: 'TaskScheduler' +2025-10-24 03:16:25.532 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:16:35.540 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:16:35 + → module: 'TaskScheduler' +2025-10-24 03:16:35.541 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:16:45.563 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:16:45 + → module: 'TaskScheduler' +2025-10-24 03:16:45.563 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:16:55.570 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:16:55 + → module: 'TaskScheduler' +2025-10-24 03:16:55.570 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:17:05.578 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:17:05 + → module: 'TaskScheduler' +2025-10-24 03:17:05.578 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:17:15.608 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:17:15 + → module: 'TaskScheduler' +2025-10-24 03:17:15.608 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:17:25.616 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:17:25 + → module: 'TaskScheduler' +2025-10-24 03:17:25.616 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:17:35.625 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:17:35 + → module: 'TaskScheduler' +2025-10-24 03:17:35.625 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:17:45.635 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:17:45 + → module: 'TaskScheduler' +2025-10-24 03:17:45.635 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:17:55.643 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:17:55 + → module: 'TaskScheduler' +2025-10-24 03:17:55.643 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:18:05.669 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:18:05 + → module: 'TaskScheduler' +2025-10-24 03:18:05.669 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:18:15.678 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:18:15 + → module: 'TaskScheduler' +2025-10-24 03:18:15.678 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:18:25.688 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:18:25 + → module: 'TaskScheduler' +2025-10-24 03:18:25.688 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:18:35.696 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:18:35 + → module: 'TaskScheduler' +2025-10-24 03:18:35.696 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:18:45.705 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:18:45 + → module: 'TaskScheduler' +2025-10-24 03:18:45.705 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:18:55.730 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:18:55 + → module: 'TaskScheduler' +2025-10-24 03:18:55.730 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:19:05.738 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:19:05 + → module: 'TaskScheduler' +2025-10-24 03:19:05.738 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:19:15.761 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:19:15 + → module: 'TaskScheduler' +2025-10-24 03:19:15.761 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:19:25.768 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:19:25 + → module: 'TaskScheduler' +2025-10-24 03:19:25.768 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:19:35.777 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:19:35 + → module: 'TaskScheduler' +2025-10-24 03:19:35.777 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:19:45.803 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:19:45 + → module: 'TaskScheduler' +2025-10-24 03:19:45.804 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:19:55.811 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:19:55 + → module: 'TaskScheduler' +2025-10-24 03:19:55.811 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:20:05.840 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:20:05 + → module: 'TaskScheduler' +2025-10-24 03:20:05.840 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:20:05.848 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:20:05.869 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 03:20:05.870 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:20:05.870 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 03:20:05.871 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 03:20:05.871 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 03:20:05.874 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 03:20:05.877 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 03:20:05.877 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 03:20:05.878 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:20:05.878 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:20:05.880 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 03:20:06.286 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:20:06.302 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:20:06.323 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:20:06.613 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:20:06.614 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 03:20:06.614 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.73秒 + → module: 'NewsAPIClient' +2025-10-24 03:20:06.615 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 03:20:06.615 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 03:20:06.616 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 03:20:06.618 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 03:20:06.619 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:20:06.620 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:20:06.620 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.75秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 03:20:06.643 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 03:20:06.644 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:20:15.872 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:20:15 + → module: 'TaskScheduler' +2025-10-24 03:20:15.872 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:20:25.879 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:20:25 + → module: 'TaskScheduler' +2025-10-24 03:20:25.880 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:20:35.889 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:20:35 + → module: 'TaskScheduler' +2025-10-24 03:20:35.889 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:20:45.898 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:20:45 + → module: 'TaskScheduler' +2025-10-24 03:20:45.898 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:20:55.906 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:20:55 + → module: 'TaskScheduler' +2025-10-24 03:20:55.907 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:21:05.931 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:21:05 + → module: 'TaskScheduler' +2025-10-24 03:21:05.931 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:21:15.939 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:21:15 + → module: 'TaskScheduler' +2025-10-24 03:21:15.939 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:21:25.947 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:21:25 + → module: 'TaskScheduler' +2025-10-24 03:21:25.947 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:21:35.954 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:21:35 + → module: 'TaskScheduler' +2025-10-24 03:21:35.955 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:21:45.965 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:21:45 + → module: 'TaskScheduler' +2025-10-24 03:21:45.965 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:21:55.996 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:21:55 + → module: 'TaskScheduler' +2025-10-24 03:21:55.996 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:22:06.020 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:22:06 + → module: 'TaskScheduler' +2025-10-24 03:22:06.020 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:22:16.040 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:22:16 + → module: 'TaskScheduler' +2025-10-24 03:22:16.040 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:22:26.048 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:22:26 + → module: 'TaskScheduler' +2025-10-24 03:22:26.048 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:22:36.056 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:22:36 + → module: 'TaskScheduler' +2025-10-24 03:22:36.056 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:22:46.064 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:22:46 + → module: 'TaskScheduler' +2025-10-24 03:22:46.064 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:22:56.072 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:22:56 + → module: 'TaskScheduler' +2025-10-24 03:22:56.072 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:23:06.081 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:23:06 + → module: 'TaskScheduler' +2025-10-24 03:23:06.081 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:23:16.089 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:23:16 + → module: 'TaskScheduler' +2025-10-24 03:23:16.089 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:23:26.114 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:23:26 + → module: 'TaskScheduler' +2025-10-24 03:23:26.114 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:23:36.123 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:23:36 + → module: 'TaskScheduler' +2025-10-24 03:23:36.123 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:23:46.154 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:23:46 + → module: 'TaskScheduler' +2025-10-24 03:23:46.154 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:23:56.162 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:23:56 + → module: 'TaskScheduler' +2025-10-24 03:23:56.162 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:24:06.170 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:24:06 + → module: 'TaskScheduler' +2025-10-24 03:24:06.170 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:24:16.179 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:24:16 + → module: 'TaskScheduler' +2025-10-24 03:24:16.179 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:24:26.187 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:24:26 + → module: 'TaskScheduler' +2025-10-24 03:24:26.187 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:24:36.194 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:24:36 + → module: 'TaskScheduler' +2025-10-24 03:24:36.194 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:24:46.225 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:24:46 + → module: 'TaskScheduler' +2025-10-24 03:24:46.226 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:24:56.246 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:24:56 + → module: 'TaskScheduler' +2025-10-24 03:24:56.246 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:25:06.273 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:25:06 + → module: 'TaskScheduler' +2025-10-24 03:25:06.273 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:25:06.280 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:25:06.302 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 03:25:06.302 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:25:06.302 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 03:25:06.303 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 03:25:06.303 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 03:25:06.307 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 03:25:06.311 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 03:25:06.312 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 03:25:06.312 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:25:06.313 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:25:06.313 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 03:25:06.743 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:25:06.756 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:25:06.767 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:25:07.076 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:25:07.078 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 03:25:07.079 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.77秒 + → module: 'NewsAPIClient' +2025-10-24 03:25:07.079 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 03:25:07.080 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 03:25:07.080 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 03:25:07.081 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 03:25:07.083 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:25:07.083 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:25:07.084 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.78秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 03:25:07.105 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 03:25:07.106 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:25:16.304 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:25:16 + → module: 'TaskScheduler' +2025-10-24 03:25:16.304 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:25:26.337 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:25:26 + → module: 'TaskScheduler' +2025-10-24 03:25:26.337 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:25:36.347 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:25:36 + → module: 'TaskScheduler' +2025-10-24 03:25:36.347 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:25:46.357 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:25:46 + → module: 'TaskScheduler' +2025-10-24 03:25:46.358 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:25:56.391 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:25:56 + → module: 'TaskScheduler' +2025-10-24 03:25:56.391 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:26:06.424 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:26:06 + → module: 'TaskScheduler' +2025-10-24 03:26:06.425 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:26:16.443 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:26:16 + → module: 'TaskScheduler' +2025-10-24 03:26:16.443 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:26:26.451 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:26:26 + → module: 'TaskScheduler' +2025-10-24 03:26:26.451 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:26:36.458 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:26:36 + → module: 'TaskScheduler' +2025-10-24 03:26:36.459 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:26:46.476 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:26:46 + → module: 'TaskScheduler' +2025-10-24 03:26:46.476 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:26:56.484 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:26:56 + → module: 'TaskScheduler' +2025-10-24 03:26:56.484 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:27:06.503 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:27:06 + → module: 'TaskScheduler' +2025-10-24 03:27:06.503 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:27:16.511 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:27:16 + → module: 'TaskScheduler' +2025-10-24 03:27:16.511 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:27:26.520 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:27:26 + → module: 'TaskScheduler' +2025-10-24 03:27:26.520 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:27:36.539 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:27:36 + → module: 'TaskScheduler' +2025-10-24 03:27:36.539 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:27:46.569 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:27:46 + → module: 'TaskScheduler' +2025-10-24 03:27:46.570 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:27:56.578 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:27:56 + → module: 'TaskScheduler' +2025-10-24 03:27:56.579 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:28:06.587 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:28:06 + → module: 'TaskScheduler' +2025-10-24 03:28:06.587 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:28:16.594 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:28:16 + → module: 'TaskScheduler' +2025-10-24 03:28:16.594 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:28:26.602 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:28:26 + → module: 'TaskScheduler' +2025-10-24 03:28:26.602 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:28:36.634 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:28:36 + → module: 'TaskScheduler' +2025-10-24 03:28:36.634 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:28:46.655 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:28:46 + → module: 'TaskScheduler' +2025-10-24 03:28:46.656 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:28:56.663 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:28:56 + → module: 'TaskScheduler' +2025-10-24 03:28:56.663 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:29:06.688 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:29:06 + → module: 'TaskScheduler' +2025-10-24 03:29:06.688 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:29:16.698 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:29:16 + → module: 'TaskScheduler' +2025-10-24 03:29:16.698 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:29:26.706 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:29:26 + → module: 'TaskScheduler' +2025-10-24 03:29:26.706 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:29:36.715 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:29:36 + → module: 'TaskScheduler' +2025-10-24 03:29:36.715 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:29:46.726 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:29:46 + → module: 'TaskScheduler' +2025-10-24 03:29:46.726 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:29:56.734 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:29:56 + → module: 'TaskScheduler' +2025-10-24 03:29:56.734 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:30:06.743 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:30:06 + → module: 'TaskScheduler' +2025-10-24 03:30:06.743 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:30:06.751 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:30:06.760 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 03:30:06.761 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:30:06.761 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 03:30:06.761 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 03:30:06.761 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 03:30:06.765 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 03:30:06.793 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 03:30:06.793 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 03:30:06.795 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:30:06.795 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:30:06.795 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 03:30:07.313 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:30:07.326 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:30:07.345 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:30:07.756 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:30:07.758 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 03:30:07.759 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.96秒 + → module: 'NewsAPIClient' +2025-10-24 03:30:07.759 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 03:30:07.760 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 03:30:07.761 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 03:30:07.763 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 03:30:07.765 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:30:07.765 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:30:07.766 | INFO | task_scheduler:289 - 任务执行完成,耗时: 1.01秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 03:30:07.793 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 03:30:07.794 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:30:16.762 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:30:16 + → module: 'TaskScheduler' +2025-10-24 03:30:16.762 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:30:26.783 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:30:26 + → module: 'TaskScheduler' +2025-10-24 03:30:26.783 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:30:36.816 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:30:36 + → module: 'TaskScheduler' +2025-10-24 03:30:36.816 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:30:46.848 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:30:46 + → module: 'TaskScheduler' +2025-10-24 03:30:46.848 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:30:56.856 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:30:56 + → module: 'TaskScheduler' +2025-10-24 03:30:56.856 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:31:06.865 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:31:06 + → module: 'TaskScheduler' +2025-10-24 03:31:06.865 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:31:16.896 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:31:16 + → module: 'TaskScheduler' +2025-10-24 03:31:16.896 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:31:26.904 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:31:26 + → module: 'TaskScheduler' +2025-10-24 03:31:26.904 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:31:36.933 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:31:36 + → module: 'TaskScheduler' +2025-10-24 03:31:36.934 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:31:46.947 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:31:46 + → module: 'TaskScheduler' +2025-10-24 03:31:46.947 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:31:56.977 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:31:56 + → module: 'TaskScheduler' +2025-10-24 03:31:56.977 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:32:06.988 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:32:06 + → module: 'TaskScheduler' +2025-10-24 03:32:06.988 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:32:16.997 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:32:16 + → module: 'TaskScheduler' +2025-10-24 03:32:16.997 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:32:27.009 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:32:27 + → module: 'TaskScheduler' +2025-10-24 03:32:27.009 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:32:37.017 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:32:37 + → module: 'TaskScheduler' +2025-10-24 03:32:37.017 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:32:47.024 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:32:47 + → module: 'TaskScheduler' +2025-10-24 03:32:47.024 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:32:57.034 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:32:57 + → module: 'TaskScheduler' +2025-10-24 03:32:57.034 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:33:07.061 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:33:07 + → module: 'TaskScheduler' +2025-10-24 03:33:07.061 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:33:17.069 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:33:17 + → module: 'TaskScheduler' +2025-10-24 03:33:17.069 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:33:27.076 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:33:27 + → module: 'TaskScheduler' +2025-10-24 03:33:27.076 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:33:37.083 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:33:37 + → module: 'TaskScheduler' +2025-10-24 03:33:37.083 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:33:47.091 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:33:47 + → module: 'TaskScheduler' +2025-10-24 03:33:47.091 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:33:57.100 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:33:57 + → module: 'TaskScheduler' +2025-10-24 03:33:57.100 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:34:07.107 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:34:07 + → module: 'TaskScheduler' +2025-10-24 03:34:07.107 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:34:17.128 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:34:17 + → module: 'TaskScheduler' +2025-10-24 03:34:17.128 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:34:27.150 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:34:27 + → module: 'TaskScheduler' +2025-10-24 03:34:27.150 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:34:37.159 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:34:37 + → module: 'TaskScheduler' +2025-10-24 03:34:37.159 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:34:47.168 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:34:47 + → module: 'TaskScheduler' +2025-10-24 03:34:47.168 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:34:57.176 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:34:57 + → module: 'TaskScheduler' +2025-10-24 03:34:57.176 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:35:07.185 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:35:07 + → module: 'TaskScheduler' +2025-10-24 03:35:07.185 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:35:07.211 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:35:07.235 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 03:35:07.236 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:35:07.236 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 03:35:07.236 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 03:35:07.236 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 03:35:07.239 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 03:35:07.266 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 03:35:07.267 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 03:35:07.267 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:35:07.268 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:35:07.268 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 03:35:07.705 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:35:07.742 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:35:07.751 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:35:08.064 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:35:08.066 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 03:35:08.066 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.80秒 + → module: 'NewsAPIClient' +2025-10-24 03:35:08.067 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 03:35:08.067 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 03:35:08.068 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 03:35:08.070 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 03:35:08.072 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:35:08.072 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:35:08.072 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.84秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 03:35:08.081 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 03:35:08.081 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:35:17.237 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:35:17 + → module: 'TaskScheduler' +2025-10-24 03:35:17.237 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:35:27.263 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:35:27 + → module: 'TaskScheduler' +2025-10-24 03:35:27.263 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:35:37.270 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:35:37 + → module: 'TaskScheduler' +2025-10-24 03:35:37.270 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:35:47.282 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:35:47 + → module: 'TaskScheduler' +2025-10-24 03:35:47.282 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:35:57.311 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:35:57 + → module: 'TaskScheduler' +2025-10-24 03:35:57.311 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:36:07.321 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:36:07 + → module: 'TaskScheduler' +2025-10-24 03:36:07.321 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:36:17.329 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:36:17 + → module: 'TaskScheduler' +2025-10-24 03:36:17.329 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:36:27.338 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:36:27 + → module: 'TaskScheduler' +2025-10-24 03:36:27.338 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:36:37.347 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:36:37 + → module: 'TaskScheduler' +2025-10-24 03:36:37.347 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:36:47.357 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:36:47 + → module: 'TaskScheduler' +2025-10-24 03:36:47.357 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:36:57.365 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:36:57 + → module: 'TaskScheduler' +2025-10-24 03:36:57.365 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:37:07.372 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:37:07 + → module: 'TaskScheduler' +2025-10-24 03:37:07.373 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:37:17.398 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:37:17 + → module: 'TaskScheduler' +2025-10-24 03:37:17.398 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:37:27.406 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:37:27 + → module: 'TaskScheduler' +2025-10-24 03:37:27.407 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:37:37.429 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:37:37 + → module: 'TaskScheduler' +2025-10-24 03:37:37.429 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:37:47.458 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:37:47 + → module: 'TaskScheduler' +2025-10-24 03:37:47.458 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:37:57.470 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:37:57 + → module: 'TaskScheduler' +2025-10-24 03:37:57.470 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:38:07.498 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:38:07 + → module: 'TaskScheduler' +2025-10-24 03:38:07.498 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:38:17.507 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:38:17 + → module: 'TaskScheduler' +2025-10-24 03:38:17.507 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:38:27.531 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:38:27 + → module: 'TaskScheduler' +2025-10-24 03:38:27.531 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:38:37.539 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:38:37 + → module: 'TaskScheduler' +2025-10-24 03:38:37.540 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:38:47.549 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:38:47 + → module: 'TaskScheduler' +2025-10-24 03:38:47.549 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:38:57.556 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:38:57 + → module: 'TaskScheduler' +2025-10-24 03:38:57.556 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:39:07.564 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:39:07 + → module: 'TaskScheduler' +2025-10-24 03:39:07.565 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:39:17.572 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:39:17 + → module: 'TaskScheduler' +2025-10-24 03:39:17.572 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:39:27.580 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:39:27 + → module: 'TaskScheduler' +2025-10-24 03:39:27.580 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:39:37.611 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:39:37 + → module: 'TaskScheduler' +2025-10-24 03:39:37.611 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:39:47.620 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:39:47 + → module: 'TaskScheduler' +2025-10-24 03:39:47.620 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:39:57.650 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:39:57 + → module: 'TaskScheduler' +2025-10-24 03:39:57.650 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:40:07.671 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:40:07 + → module: 'TaskScheduler' +2025-10-24 03:40:07.671 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:40:07.679 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:40:07.701 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 03:40:07.702 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:40:07.703 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 03:40:07.703 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 03:40:07.703 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 03:40:07.730 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 03:40:07.734 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 03:40:07.735 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 03:40:07.735 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:40:07.735 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:40:07.736 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 03:40:08.180 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:40:08.193 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:40:08.218 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:40:08.508 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:40:08.511 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 03:40:08.511 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.77秒 + → module: 'NewsAPIClient' +2025-10-24 03:40:08.512 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 03:40:08.512 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 03:40:08.513 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 03:40:08.514 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 03:40:08.516 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:40:08.516 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:40:08.516 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.81秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 03:40:08.540 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 03:40:08.540 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:40:17.704 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:40:17 + → module: 'TaskScheduler' +2025-10-24 03:40:17.704 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:40:27.712 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:40:27 + → module: 'TaskScheduler' +2025-10-24 03:40:27.712 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:40:37.719 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:40:37 + → module: 'TaskScheduler' +2025-10-24 03:40:37.719 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:40:47.744 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:40:47 + → module: 'TaskScheduler' +2025-10-24 03:40:47.744 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:40:57.751 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:40:57 + → module: 'TaskScheduler' +2025-10-24 03:40:57.751 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:41:07.777 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:41:07 + → module: 'TaskScheduler' +2025-10-24 03:41:07.777 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:41:17.784 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:41:17 + → module: 'TaskScheduler' +2025-10-24 03:41:17.784 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:41:27.802 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:41:27 + → module: 'TaskScheduler' +2025-10-24 03:41:27.802 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:41:37.821 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:41:37 + → module: 'TaskScheduler' +2025-10-24 03:41:37.821 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:41:47.829 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:41:47 + → module: 'TaskScheduler' +2025-10-24 03:41:47.829 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:41:57.854 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:41:57 + → module: 'TaskScheduler' +2025-10-24 03:41:57.855 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:42:07.878 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:42:07 + → module: 'TaskScheduler' +2025-10-24 03:42:07.878 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:42:17.898 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:42:17 + → module: 'TaskScheduler' +2025-10-24 03:42:17.898 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:42:27.905 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:42:27 + → module: 'TaskScheduler' +2025-10-24 03:42:27.905 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:42:37.913 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:42:37 + → module: 'TaskScheduler' +2025-10-24 03:42:37.914 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:42:47.937 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:42:47 + → module: 'TaskScheduler' +2025-10-24 03:42:47.938 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:42:57.963 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:42:57 + → module: 'TaskScheduler' +2025-10-24 03:42:57.963 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:43:07.972 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:43:07 + → module: 'TaskScheduler' +2025-10-24 03:43:07.972 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:43:17.993 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:43:17 + → module: 'TaskScheduler' +2025-10-24 03:43:17.993 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:43:28.002 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:43:28 + → module: 'TaskScheduler' +2025-10-24 03:43:28.003 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:43:38.011 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:43:38 + → module: 'TaskScheduler' +2025-10-24 03:43:38.011 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:43:48.037 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:43:48 + → module: 'TaskScheduler' +2025-10-24 03:43:48.037 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:43:58.057 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:43:58 + → module: 'TaskScheduler' +2025-10-24 03:43:58.057 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:44:08.066 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:44:08 + → module: 'TaskScheduler' +2025-10-24 03:44:08.066 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:44:18.098 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:44:18 + → module: 'TaskScheduler' +2025-10-24 03:44:18.098 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:44:28.127 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:44:28 + → module: 'TaskScheduler' +2025-10-24 03:44:28.127 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:44:38.136 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:44:38 + → module: 'TaskScheduler' +2025-10-24 03:44:38.136 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:44:48.148 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:44:48 + → module: 'TaskScheduler' +2025-10-24 03:44:48.149 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:44:58.172 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:44:58 + → module: 'TaskScheduler' +2025-10-24 03:44:58.172 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:45:08.193 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:45:08 + → module: 'TaskScheduler' +2025-10-24 03:45:08.193 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:45:08.201 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:45:08.211 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 03:45:08.213 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:45:08.213 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 03:45:08.213 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 03:45:08.213 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 03:45:08.217 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 03:45:08.219 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 03:45:08.220 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 03:45:08.220 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:45:08.220 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:45:08.220 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 03:45:08.622 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:45:08.635 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:45:08.662 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:45:08.921 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:45:08.924 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 03:45:08.925 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.70秒 + → module: 'NewsAPIClient' +2025-10-24 03:45:08.925 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 03:45:08.929 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 03:45:08.931 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 03:45:08.935 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 03:45:08.938 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:45:08.938 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:45:08.939 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.73秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 03:45:08.951 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 03:45:08.952 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:45:18.215 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:45:18 + → module: 'TaskScheduler' +2025-10-24 03:45:18.215 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:45:28.223 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:45:28 + → module: 'TaskScheduler' +2025-10-24 03:45:28.223 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:45:38.256 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:45:38 + → module: 'TaskScheduler' +2025-10-24 03:45:38.256 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:45:48.265 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:45:48 + → module: 'TaskScheduler' +2025-10-24 03:45:48.265 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:45:58.286 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:45:58 + → module: 'TaskScheduler' +2025-10-24 03:45:58.286 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:46:08.294 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:46:08 + → module: 'TaskScheduler' +2025-10-24 03:46:08.295 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:46:18.315 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:46:18 + → module: 'TaskScheduler' +2025-10-24 03:46:18.315 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:46:28.341 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:46:28 + → module: 'TaskScheduler' +2025-10-24 03:46:28.341 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:46:38.350 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:46:38 + → module: 'TaskScheduler' +2025-10-24 03:46:38.350 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:46:48.358 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:46:48 + → module: 'TaskScheduler' +2025-10-24 03:46:48.358 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:46:58.379 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:46:58 + → module: 'TaskScheduler' +2025-10-24 03:46:58.380 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:47:08.387 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:47:08 + → module: 'TaskScheduler' +2025-10-24 03:47:08.388 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:47:18.396 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:47:18 + → module: 'TaskScheduler' +2025-10-24 03:47:18.396 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:47:28.407 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:47:28 + → module: 'TaskScheduler' +2025-10-24 03:47:28.407 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:47:38.419 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:47:38 + → module: 'TaskScheduler' +2025-10-24 03:47:38.420 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:47:48.428 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:47:48 + → module: 'TaskScheduler' +2025-10-24 03:47:48.428 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:47:58.437 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:47:58 + → module: 'TaskScheduler' +2025-10-24 03:47:58.438 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:48:08.446 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:48:08 + → module: 'TaskScheduler' +2025-10-24 03:48:08.446 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:48:18.477 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:48:18 + → module: 'TaskScheduler' +2025-10-24 03:48:18.477 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:48:28.484 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:48:28 + → module: 'TaskScheduler' +2025-10-24 03:48:28.484 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:48:38.491 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:48:38 + → module: 'TaskScheduler' +2025-10-24 03:48:38.491 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:48:48.519 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:48:48 + → module: 'TaskScheduler' +2025-10-24 03:48:48.519 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:48:58.531 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:48:58 + → module: 'TaskScheduler' +2025-10-24 03:48:58.531 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:49:08.540 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:49:08 + → module: 'TaskScheduler' +2025-10-24 03:49:08.540 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:49:18.549 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:49:18 + → module: 'TaskScheduler' +2025-10-24 03:49:18.549 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:49:28.557 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:49:28 + → module: 'TaskScheduler' +2025-10-24 03:49:28.557 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:49:38.589 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:49:38 + → module: 'TaskScheduler' +2025-10-24 03:49:38.589 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:49:48.598 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:49:48 + → module: 'TaskScheduler' +2025-10-24 03:49:48.599 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:49:58.606 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:49:58 + → module: 'TaskScheduler' +2025-10-24 03:49:58.606 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:50:08.613 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:50:08 + → module: 'TaskScheduler' +2025-10-24 03:50:08.613 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:50:08.644 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:50:08.665 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 03:50:08.666 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:50:08.666 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 03:50:08.666 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 03:50:08.666 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 03:50:08.671 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 03:50:08.686 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 03:50:08.686 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 03:50:08.687 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:50:08.687 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:50:08.687 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 03:50:09.109 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:50:09.126 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:50:09.138 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:50:09.439 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:50:09.442 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 03:50:09.442 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.75秒 + → module: 'NewsAPIClient' +2025-10-24 03:50:09.442 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 03:50:09.443 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 03:50:09.443 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 03:50:09.445 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 03:50:09.447 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:50:09.447 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:50:09.447 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.78秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 03:50:09.478 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 03:50:09.479 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:50:18.668 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:50:18 + → module: 'TaskScheduler' +2025-10-24 03:50:18.668 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:50:28.694 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:50:28 + → module: 'TaskScheduler' +2025-10-24 03:50:28.694 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:50:38.702 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:50:38 + → module: 'TaskScheduler' +2025-10-24 03:50:38.702 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:50:48.722 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:50:48 + → module: 'TaskScheduler' +2025-10-24 03:50:48.722 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:50:58.754 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:50:58 + → module: 'TaskScheduler' +2025-10-24 03:50:58.754 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:51:08.762 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:51:08 + → module: 'TaskScheduler' +2025-10-24 03:51:08.762 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:51:18.787 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:51:18 + → module: 'TaskScheduler' +2025-10-24 03:51:18.787 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:51:28.818 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:51:28 + → module: 'TaskScheduler' +2025-10-24 03:51:28.818 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:51:38.826 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:51:38 + → module: 'TaskScheduler' +2025-10-24 03:51:38.826 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:51:48.838 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:51:48 + → module: 'TaskScheduler' +2025-10-24 03:51:48.838 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:51:58.871 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:51:58 + → module: 'TaskScheduler' +2025-10-24 03:51:58.871 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:52:08.897 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:52:08 + → module: 'TaskScheduler' +2025-10-24 03:52:08.897 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:52:18.905 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:52:18 + → module: 'TaskScheduler' +2025-10-24 03:52:18.905 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:52:28.930 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:52:28 + → module: 'TaskScheduler' +2025-10-24 03:52:28.930 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:52:38.952 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:52:38 + → module: 'TaskScheduler' +2025-10-24 03:52:38.953 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:52:48.964 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:52:48 + → module: 'TaskScheduler' +2025-10-24 03:52:48.964 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:52:58.983 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:52:58 + → module: 'TaskScheduler' +2025-10-24 03:52:58.984 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:53:08.995 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:53:08 + → module: 'TaskScheduler' +2025-10-24 03:53:08.995 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:53:19.004 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:53:19 + → module: 'TaskScheduler' +2025-10-24 03:53:19.004 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:53:29.011 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:53:29 + → module: 'TaskScheduler' +2025-10-24 03:53:29.011 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:53:39.041 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:53:39 + → module: 'TaskScheduler' +2025-10-24 03:53:39.041 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:53:49.049 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:53:49 + → module: 'TaskScheduler' +2025-10-24 03:53:49.049 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:53:59.081 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:53:59 + → module: 'TaskScheduler' +2025-10-24 03:53:59.081 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:54:09.089 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:54:09 + → module: 'TaskScheduler' +2025-10-24 03:54:09.089 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:54:19.096 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:54:19 + → module: 'TaskScheduler' +2025-10-24 03:54:19.096 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:54:29.104 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:54:29 + → module: 'TaskScheduler' +2025-10-24 03:54:29.104 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:54:39.132 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:54:39 + → module: 'TaskScheduler' +2025-10-24 03:54:39.132 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:54:49.140 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:54:49 + → module: 'TaskScheduler' +2025-10-24 03:54:49.140 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:54:59.149 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:54:59 + → module: 'TaskScheduler' +2025-10-24 03:54:59.149 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:55:09.157 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:55:09 + → module: 'TaskScheduler' +2025-10-24 03:55:09.158 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:55:09.171 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:55:09.194 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 03:55:09.194 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:55:09.195 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 03:55:09.195 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 03:55:09.195 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 03:55:09.218 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 03:55:09.223 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 03:55:09.224 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 03:55:09.225 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:55:09.226 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:55:09.226 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 03:55:09.661 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:55:09.672 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:55:09.695 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:55:10.033 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 03:55:10.035 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 03:55:10.036 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.81秒 + → module: 'NewsAPIClient' +2025-10-24 03:55:10.037 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 03:55:10.038 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 03:55:10.038 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 03:55:10.039 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 03:55:10.041 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:55:10.041 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 03:55:10.041 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.85秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 03:55:10.050 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 03:55:10.050 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 03:55:19.196 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:55:19 + → module: 'TaskScheduler' +2025-10-24 03:55:19.196 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:55:29.204 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:55:29 + → module: 'TaskScheduler' +2025-10-24 03:55:29.204 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:55:39.212 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:55:39 + → module: 'TaskScheduler' +2025-10-24 03:55:39.212 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:55:49.231 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:55:49 + → module: 'TaskScheduler' +2025-10-24 03:55:49.231 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:55:59.240 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:55:59 + → module: 'TaskScheduler' +2025-10-24 03:55:59.240 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:56:09.247 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:56:09 + → module: 'TaskScheduler' +2025-10-24 03:56:09.247 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:56:19.259 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:56:19 + → module: 'TaskScheduler' +2025-10-24 03:56:19.259 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:56:29.266 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:56:29 + → module: 'TaskScheduler' +2025-10-24 03:56:29.266 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:56:39.273 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:56:39 + → module: 'TaskScheduler' +2025-10-24 03:56:39.273 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:56:49.281 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:56:49 + → module: 'TaskScheduler' +2025-10-24 03:56:49.281 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:56:59.289 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:56:59 + → module: 'TaskScheduler' +2025-10-24 03:56:59.289 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:57:09.318 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:57:09 + → module: 'TaskScheduler' +2025-10-24 03:57:09.318 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:57:19.327 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:57:19 + → module: 'TaskScheduler' +2025-10-24 03:57:19.327 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:57:29.337 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:57:29 + → module: 'TaskScheduler' +2025-10-24 03:57:29.338 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:57:39.365 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:57:39 + → module: 'TaskScheduler' +2025-10-24 03:57:39.365 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:57:49.374 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:57:49 + → module: 'TaskScheduler' +2025-10-24 03:57:49.374 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:57:59.382 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:57:59 + → module: 'TaskScheduler' +2025-10-24 03:57:59.382 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:58:09.390 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:58:09 + → module: 'TaskScheduler' +2025-10-24 03:58:09.390 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:58:19.401 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:58:19 + → module: 'TaskScheduler' +2025-10-24 03:58:19.401 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:58:29.433 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:58:29 + → module: 'TaskScheduler' +2025-10-24 03:58:29.433 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:58:39.454 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:58:39 + → module: 'TaskScheduler' +2025-10-24 03:58:39.454 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:58:49.462 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:58:49 + → module: 'TaskScheduler' +2025-10-24 03:58:49.462 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:58:59.470 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:58:59 + → module: 'TaskScheduler' +2025-10-24 03:58:59.470 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:59:09.478 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:59:09 + → module: 'TaskScheduler' +2025-10-24 03:59:09.478 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:59:19.489 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:59:19 + → module: 'TaskScheduler' +2025-10-24 03:59:19.489 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:59:29.496 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:59:29 + → module: 'TaskScheduler' +2025-10-24 03:59:29.496 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:59:39.503 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:59:39 + → module: 'TaskScheduler' +2025-10-24 03:59:39.503 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:59:49.535 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:59:49 + → module: 'TaskScheduler' +2025-10-24 03:59:49.535 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 03:59:59.543 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 03:59:59 + → module: 'TaskScheduler' +2025-10-24 03:59:59.543 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:00:09.554 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:00:09 + → module: 'TaskScheduler' +2025-10-24 04:00:09.554 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:00:09.586 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:00:09.607 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 04:00:09.608 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:00:09.608 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 04:00:09.608 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 04:00:09.608 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 04:00:09.612 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 04:00:09.616 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 04:00:09.616 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 04:00:09.617 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:00:09.617 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:00:09.618 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 04:00:10.016 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:00:10.041 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:00:10.105 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:00:10.386 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:00:10.389 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 04:00:10.389 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.77秒 + → module: 'NewsAPIClient' +2025-10-24 04:00:10.390 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 04:00:10.391 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 04:00:10.392 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 04:00:10.393 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 04:00:10.395 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:00:10.395 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:00:10.395 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.79秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 04:00:10.403 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 04:00:10.404 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:00:19.610 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:00:19 + → module: 'TaskScheduler' +2025-10-24 04:00:19.610 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:00:29.618 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:00:29 + → module: 'TaskScheduler' +2025-10-24 04:00:29.618 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:00:39.645 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:00:39 + → module: 'TaskScheduler' +2025-10-24 04:00:39.645 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:00:49.656 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:00:49 + → module: 'TaskScheduler' +2025-10-24 04:00:49.656 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:00:59.663 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:00:59 + → module: 'TaskScheduler' +2025-10-24 04:00:59.663 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:01:09.671 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:01:09 + → module: 'TaskScheduler' +2025-10-24 04:01:09.671 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:01:19.679 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:01:19 + → module: 'TaskScheduler' +2025-10-24 04:01:19.680 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:01:29.687 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:01:29 + → module: 'TaskScheduler' +2025-10-24 04:01:29.687 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:01:39.699 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:01:39 + → module: 'TaskScheduler' +2025-10-24 04:01:39.699 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:01:49.730 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:01:49 + → module: 'TaskScheduler' +2025-10-24 04:01:49.730 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:01:59.738 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:01:59 + → module: 'TaskScheduler' +2025-10-24 04:01:59.739 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:02:09.747 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:02:09 + → module: 'TaskScheduler' +2025-10-24 04:02:09.747 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:02:19.757 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:02:19 + → module: 'TaskScheduler' +2025-10-24 04:02:19.757 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:02:29.765 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:02:29 + → module: 'TaskScheduler' +2025-10-24 04:02:29.765 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:02:39.773 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:02:39 + → module: 'TaskScheduler' +2025-10-24 04:02:39.773 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:02:49.807 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:02:49 + → module: 'TaskScheduler' +2025-10-24 04:02:49.807 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:02:59.842 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:02:59 + → module: 'TaskScheduler' +2025-10-24 04:02:59.842 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:03:09.849 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:03:09 + → module: 'TaskScheduler' +2025-10-24 04:03:09.849 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:03:19.883 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:03:19 + → module: 'TaskScheduler' +2025-10-24 04:03:19.883 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:03:29.891 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:03:29 + → module: 'TaskScheduler' +2025-10-24 04:03:29.891 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:03:39.920 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:03:39 + → module: 'TaskScheduler' +2025-10-24 04:03:39.920 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:03:49.929 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:03:49 + → module: 'TaskScheduler' +2025-10-24 04:03:49.929 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:03:59.937 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:03:59 + → module: 'TaskScheduler' +2025-10-24 04:03:59.937 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:04:09.944 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:04:09 + → module: 'TaskScheduler' +2025-10-24 04:04:09.944 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:04:19.952 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:04:19 + → module: 'TaskScheduler' +2025-10-24 04:04:19.952 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:04:29.961 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:04:29 + → module: 'TaskScheduler' +2025-10-24 04:04:29.961 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:04:39.970 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:04:39 + → module: 'TaskScheduler' +2025-10-24 04:04:39.970 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:04:49.978 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:04:49 + → module: 'TaskScheduler' +2025-10-24 04:04:49.978 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:05:00.011 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:05:00 + → module: 'TaskScheduler' +2025-10-24 04:05:00.011 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:05:00.023 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:05:00.046 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 04:05:00.046 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:05:00.047 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 04:05:00.047 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 04:05:00.047 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 04:05:00.064 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 04:05:00.080 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 04:05:00.080 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 04:05:00.081 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:05:00.081 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:05:00.082 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 04:05:00.522 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:05:00.536 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:05:00.549 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:05:00.881 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:05:00.883 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 04:05:00.884 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.80秒 + → module: 'NewsAPIClient' +2025-10-24 04:05:00.884 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 04:05:00.885 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 04:05:00.887 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 04:05:00.888 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 04:05:00.890 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:05:00.891 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:05:00.892 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.85秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 04:05:00.924 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 04:05:00.925 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:05:10.048 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:05:10 + → module: 'TaskScheduler' +2025-10-24 04:05:10.048 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:05:20.056 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:05:20 + → module: 'TaskScheduler' +2025-10-24 04:05:20.056 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:05:30.074 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:05:30 + → module: 'TaskScheduler' +2025-10-24 04:05:30.074 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:05:40.082 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:05:40 + → module: 'TaskScheduler' +2025-10-24 04:05:40.082 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:05:50.111 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:05:50 + → module: 'TaskScheduler' +2025-10-24 04:05:50.111 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:06:00.147 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:06:00 + → module: 'TaskScheduler' +2025-10-24 04:06:00.147 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:06:10.154 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:06:10 + → module: 'TaskScheduler' +2025-10-24 04:06:10.154 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:06:20.162 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:06:20 + → module: 'TaskScheduler' +2025-10-24 04:06:20.162 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:06:30.170 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:06:30 + → module: 'TaskScheduler' +2025-10-24 04:06:30.170 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:06:40.178 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:06:40 + → module: 'TaskScheduler' +2025-10-24 04:06:40.178 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:06:50.187 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:06:50 + → module: 'TaskScheduler' +2025-10-24 04:06:50.187 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:07:00.210 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:07:00 + → module: 'TaskScheduler' +2025-10-24 04:07:00.210 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:07:10.219 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:07:10 + → module: 'TaskScheduler' +2025-10-24 04:07:10.219 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:07:20.242 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:07:20 + → module: 'TaskScheduler' +2025-10-24 04:07:20.242 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:07:30.273 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:07:30 + → module: 'TaskScheduler' +2025-10-24 04:07:30.273 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:07:40.283 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:07:40 + → module: 'TaskScheduler' +2025-10-24 04:07:40.283 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:07:50.295 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:07:50 + → module: 'TaskScheduler' +2025-10-24 04:07:50.295 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:08:00.318 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:08:00 + → module: 'TaskScheduler' +2025-10-24 04:08:00.319 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:08:10.328 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:08:10 + → module: 'TaskScheduler' +2025-10-24 04:08:10.328 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:08:20.355 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:08:20 + → module: 'TaskScheduler' +2025-10-24 04:08:20.355 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:08:30.381 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:08:30 + → module: 'TaskScheduler' +2025-10-24 04:08:30.381 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:08:40.390 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:08:40 + → module: 'TaskScheduler' +2025-10-24 04:08:40.390 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:08:40.399 | INFO | main:87 - 小时任务统计 + → module: 'Main' + → 总任务数: 12 + → 成功: 12 + → 失败: 0 +2025-10-24 04:08:50.399 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:08:50 + → module: 'TaskScheduler' +2025-10-24 04:08:50.400 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:09:00.420 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:09:00 + → module: 'TaskScheduler' +2025-10-24 04:09:00.420 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:09:10.431 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:09:10 + → module: 'TaskScheduler' +2025-10-24 04:09:10.431 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:09:20.452 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:09:20 + → module: 'TaskScheduler' +2025-10-24 04:09:20.452 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:09:30.460 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:09:30 + → module: 'TaskScheduler' +2025-10-24 04:09:30.460 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:09:40.490 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:09:40 + → module: 'TaskScheduler' +2025-10-24 04:09:40.490 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:09:50.498 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:09:50 + → module: 'TaskScheduler' +2025-10-24 04:09:50.498 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:10:00.506 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:10:00 + → module: 'TaskScheduler' +2025-10-24 04:10:00.506 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:10:00.527 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:10:00.549 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 04:10:00.549 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:10:00.550 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 04:10:00.550 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 04:10:00.550 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 04:10:00.554 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 04:10:00.559 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 04:10:00.560 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 04:10:00.560 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:10:00.561 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:10:00.561 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 04:10:00.967 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:10:00.989 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:10:01.041 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:10:01.315 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:10:01.316 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 04:10:01.317 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.76秒 + → module: 'NewsAPIClient' +2025-10-24 04:10:01.317 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 04:10:01.319 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 04:10:01.319 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 04:10:01.321 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 04:10:01.323 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:10:01.324 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:10:01.324 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.77秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 04:10:01.381 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 04:10:01.383 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:10:10.552 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:10:10 + → module: 'TaskScheduler' +2025-10-24 04:10:10.552 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:10:20.564 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:10:20 + → module: 'TaskScheduler' +2025-10-24 04:10:20.565 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:10:30.576 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:10:30 + → module: 'TaskScheduler' +2025-10-24 04:10:30.576 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:10:40.584 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:10:40 + → module: 'TaskScheduler' +2025-10-24 04:10:40.584 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:10:50.605 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:10:50 + → module: 'TaskScheduler' +2025-10-24 04:10:50.605 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:11:00.632 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:11:00 + → module: 'TaskScheduler' +2025-10-24 04:11:00.632 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:11:10.640 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:11:10 + → module: 'TaskScheduler' +2025-10-24 04:11:10.640 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:11:20.648 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:11:20 + → module: 'TaskScheduler' +2025-10-24 04:11:20.648 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:11:30.655 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:11:30 + → module: 'TaskScheduler' +2025-10-24 04:11:30.655 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:11:40.663 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:11:40 + → module: 'TaskScheduler' +2025-10-24 04:11:40.663 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:11:50.683 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:11:50 + → module: 'TaskScheduler' +2025-10-24 04:11:50.683 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:12:00.704 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:12:00 + → module: 'TaskScheduler' +2025-10-24 04:12:00.704 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:12:10.712 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:12:10 + → module: 'TaskScheduler' +2025-10-24 04:12:10.712 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:12:20.721 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:12:20 + → module: 'TaskScheduler' +2025-10-24 04:12:20.722 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:12:30.729 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:12:30 + → module: 'TaskScheduler' +2025-10-24 04:12:30.729 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:12:40.738 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:12:40 + → module: 'TaskScheduler' +2025-10-24 04:12:40.738 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:12:50.767 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:12:50 + → module: 'TaskScheduler' +2025-10-24 04:12:50.767 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:13:00.775 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:13:00 + → module: 'TaskScheduler' +2025-10-24 04:13:00.775 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:13:10.783 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:13:10 + → module: 'TaskScheduler' +2025-10-24 04:13:10.783 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:13:20.793 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:13:20 + → module: 'TaskScheduler' +2025-10-24 04:13:20.794 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:13:30.821 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:13:30 + → module: 'TaskScheduler' +2025-10-24 04:13:30.822 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:13:40.842 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:13:40 + → module: 'TaskScheduler' +2025-10-24 04:13:40.842 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:13:50.850 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:13:50 + → module: 'TaskScheduler' +2025-10-24 04:13:50.850 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:14:00.859 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:14:00 + → module: 'TaskScheduler' +2025-10-24 04:14:00.859 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:14:10.887 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:14:10 + → module: 'TaskScheduler' +2025-10-24 04:14:10.887 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:14:20.896 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:14:20 + → module: 'TaskScheduler' +2025-10-24 04:14:20.896 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:14:30.904 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:14:30 + → module: 'TaskScheduler' +2025-10-24 04:14:30.904 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:14:40.912 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:14:40 + → module: 'TaskScheduler' +2025-10-24 04:14:40.912 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:14:50.931 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:14:50 + → module: 'TaskScheduler' +2025-10-24 04:14:50.931 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:15:00.939 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:15:00 + → module: 'TaskScheduler' +2025-10-24 04:15:00.940 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:15:00.948 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:15:00.992 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 04:15:00.992 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:15:00.993 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 04:15:00.993 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 04:15:00.993 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 04:15:01.019 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 04:15:01.034 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 04:15:01.035 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 04:15:01.036 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:15:01.036 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:15:01.037 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 04:15:01.435 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:15:01.459 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:15:01.472 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:15:01.803 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:15:01.805 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 04:15:01.806 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.77秒 + → module: 'NewsAPIClient' +2025-10-24 04:15:01.806 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 04:15:01.807 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 04:15:01.808 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 04:15:01.809 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 04:15:01.811 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:15:01.811 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:15:01.812 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.82秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 04:15:01.846 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 04:15:01.847 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:15:10.994 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:15:10 + → module: 'TaskScheduler' +2025-10-24 04:15:10.994 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:15:21.002 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:15:21 + → module: 'TaskScheduler' +2025-10-24 04:15:21.002 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:15:31.010 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:15:31 + → module: 'TaskScheduler' +2025-10-24 04:15:31.010 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:15:41.018 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:15:41 + → module: 'TaskScheduler' +2025-10-24 04:15:41.018 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:15:51.027 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:15:51 + → module: 'TaskScheduler' +2025-10-24 04:15:51.027 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:16:01.035 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:16:01 + → module: 'TaskScheduler' +2025-10-24 04:16:01.035 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:16:11.060 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:16:11 + → module: 'TaskScheduler' +2025-10-24 04:16:11.060 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:16:21.068 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:16:21 + → module: 'TaskScheduler' +2025-10-24 04:16:21.068 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:16:31.090 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:16:31 + → module: 'TaskScheduler' +2025-10-24 04:16:31.090 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:16:41.097 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:16:41 + → module: 'TaskScheduler' +2025-10-24 04:16:41.097 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:16:51.108 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:16:51 + → module: 'TaskScheduler' +2025-10-24 04:16:51.108 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:17:01.119 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:17:01 + → module: 'TaskScheduler' +2025-10-24 04:17:01.119 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:17:11.130 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:17:11 + → module: 'TaskScheduler' +2025-10-24 04:17:11.130 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:17:21.150 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:17:21 + → module: 'TaskScheduler' +2025-10-24 04:17:21.150 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:17:31.175 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:17:31 + → module: 'TaskScheduler' +2025-10-24 04:17:31.175 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:17:41.183 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:17:41 + → module: 'TaskScheduler' +2025-10-24 04:17:41.183 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:17:51.215 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:17:51 + → module: 'TaskScheduler' +2025-10-24 04:17:51.215 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:18:01.223 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:18:01 + → module: 'TaskScheduler' +2025-10-24 04:18:01.223 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:18:11.232 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:18:11 + → module: 'TaskScheduler' +2025-10-24 04:18:11.232 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:18:21.239 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:18:21 + → module: 'TaskScheduler' +2025-10-24 04:18:21.240 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:18:31.251 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:18:31 + → module: 'TaskScheduler' +2025-10-24 04:18:31.251 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:18:41.259 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:18:41 + → module: 'TaskScheduler' +2025-10-24 04:18:41.259 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:18:51.268 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:18:51 + → module: 'TaskScheduler' +2025-10-24 04:18:51.268 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:19:01.276 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:19:01 + → module: 'TaskScheduler' +2025-10-24 04:19:01.276 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:19:11.295 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:19:11 + → module: 'TaskScheduler' +2025-10-24 04:19:11.295 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:19:21.322 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:19:21 + → module: 'TaskScheduler' +2025-10-24 04:19:21.322 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:19:31.333 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:19:31 + → module: 'TaskScheduler' +2025-10-24 04:19:31.333 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:19:41.343 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:19:41 + → module: 'TaskScheduler' +2025-10-24 04:19:41.343 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:19:51.351 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:19:51 + → module: 'TaskScheduler' +2025-10-24 04:19:51.351 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:20:01.358 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:20:01 + → module: 'TaskScheduler' +2025-10-24 04:20:01.359 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:20:01.381 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:20:01.402 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 04:20:01.403 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:20:01.403 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 04:20:01.403 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 04:20:01.405 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 04:20:01.407 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 04:20:01.423 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 04:20:01.423 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 04:20:01.424 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:20:01.424 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:20:01.425 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 04:20:01.855 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:20:01.865 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:20:01.896 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:20:02.208 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:20:02.210 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 04:20:02.210 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.78秒 + → module: 'NewsAPIClient' +2025-10-24 04:20:02.211 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 04:20:02.211 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 04:20:02.212 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 04:20:02.213 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 04:20:02.215 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:20:02.215 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:20:02.215 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.81秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 04:20:02.223 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 04:20:02.224 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:20:11.406 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:20:11 + → module: 'TaskScheduler' +2025-10-24 04:20:11.406 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:20:21.425 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:20:21 + → module: 'TaskScheduler' +2025-10-24 04:20:21.425 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:20:31.434 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:20:31 + → module: 'TaskScheduler' +2025-10-24 04:20:31.434 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:20:41.442 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:20:41 + → module: 'TaskScheduler' +2025-10-24 04:20:41.442 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:20:51.450 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:20:51 + → module: 'TaskScheduler' +2025-10-24 04:20:51.450 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:21:01.480 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:21:01 + → module: 'TaskScheduler' +2025-10-24 04:21:01.480 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:21:11.488 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:21:11 + → module: 'TaskScheduler' +2025-10-24 04:21:11.488 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:21:21.498 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:21:21 + → module: 'TaskScheduler' +2025-10-24 04:21:21.498 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:21:31.509 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:21:31 + → module: 'TaskScheduler' +2025-10-24 04:21:31.509 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:21:41.541 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:21:41 + → module: 'TaskScheduler' +2025-10-24 04:21:41.541 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:21:51.550 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:21:51 + → module: 'TaskScheduler' +2025-10-24 04:21:51.550 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:22:01.556 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:22:01 + → module: 'TaskScheduler' +2025-10-24 04:22:01.556 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:22:11.566 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:22:11 + → module: 'TaskScheduler' +2025-10-24 04:22:11.566 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:22:21.591 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:22:21 + → module: 'TaskScheduler' +2025-10-24 04:22:21.591 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:22:31.621 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:22:31 + → module: 'TaskScheduler' +2025-10-24 04:22:31.621 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:22:41.650 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:22:41 + → module: 'TaskScheduler' +2025-10-24 04:22:41.651 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:22:51.660 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:22:51 + → module: 'TaskScheduler' +2025-10-24 04:22:51.660 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:23:01.684 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:23:01 + → module: 'TaskScheduler' +2025-10-24 04:23:01.684 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:23:11.692 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:23:11 + → module: 'TaskScheduler' +2025-10-24 04:23:11.692 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:23:21.712 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:23:21 + → module: 'TaskScheduler' +2025-10-24 04:23:21.712 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:23:31.719 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:23:31 + → module: 'TaskScheduler' +2025-10-24 04:23:31.719 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:23:41.740 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:23:41 + → module: 'TaskScheduler' +2025-10-24 04:23:41.740 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:23:51.748 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:23:51 + → module: 'TaskScheduler' +2025-10-24 04:23:51.749 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:24:01.779 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:24:01 + → module: 'TaskScheduler' +2025-10-24 04:24:01.779 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:24:11.798 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:24:11 + → module: 'TaskScheduler' +2025-10-24 04:24:11.798 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:24:21.807 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:24:21 + → module: 'TaskScheduler' +2025-10-24 04:24:21.807 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:24:31.819 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:24:31 + → module: 'TaskScheduler' +2025-10-24 04:24:31.819 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:24:41.840 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:24:41 + → module: 'TaskScheduler' +2025-10-24 04:24:41.841 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:24:51.851 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:24:51 + → module: 'TaskScheduler' +2025-10-24 04:24:51.852 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:25:01.863 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:25:01 + → module: 'TaskScheduler' +2025-10-24 04:25:01.863 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:25:01.891 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:25:01.937 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 04:25:01.937 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:25:01.937 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 04:25:01.938 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 04:25:01.938 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 04:25:01.963 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 04:25:01.978 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 04:25:01.979 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 04:25:01.979 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:25:01.979 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:25:01.980 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 04:25:02.444 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:25:02.475 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:25:02.500 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:25:02.783 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:25:02.786 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 04:25:02.787 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.81秒 + → module: 'NewsAPIClient' +2025-10-24 04:25:02.788 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 04:25:02.790 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 04:25:02.793 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 04:25:02.795 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 04:25:02.798 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:25:02.798 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:25:02.799 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.86秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 04:25:02.829 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 04:25:02.830 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:25:11.939 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:25:11 + → module: 'TaskScheduler' +2025-10-24 04:25:11.940 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:25:21.948 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:25:21 + → module: 'TaskScheduler' +2025-10-24 04:25:21.949 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:25:31.957 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:25:31 + → module: 'TaskScheduler' +2025-10-24 04:25:31.957 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:25:41.978 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:25:41 + → module: 'TaskScheduler' +2025-10-24 04:25:41.978 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:25:51.986 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:25:51 + → module: 'TaskScheduler' +2025-10-24 04:25:51.986 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:26:02.012 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:26:02 + → module: 'TaskScheduler' +2025-10-24 04:26:02.012 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:26:12.020 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:26:12 + → module: 'TaskScheduler' +2025-10-24 04:26:12.020 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:26:22.028 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:26:22 + → module: 'TaskScheduler' +2025-10-24 04:26:22.028 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:26:32.039 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:26:32 + → module: 'TaskScheduler' +2025-10-24 04:26:32.039 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:26:42.047 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:26:42 + → module: 'TaskScheduler' +2025-10-24 04:26:42.047 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:26:52.055 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:26:52 + → module: 'TaskScheduler' +2025-10-24 04:26:52.055 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:27:02.064 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:27:02 + → module: 'TaskScheduler' +2025-10-24 04:27:02.065 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:27:12.074 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:27:12 + → module: 'TaskScheduler' +2025-10-24 04:27:12.074 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:27:22.081 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:27:22 + → module: 'TaskScheduler' +2025-10-24 04:27:22.081 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:27:32.089 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:27:32 + → module: 'TaskScheduler' +2025-10-24 04:27:32.089 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:27:42.096 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:27:42 + → module: 'TaskScheduler' +2025-10-24 04:27:42.096 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:27:52.106 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:27:52 + → module: 'TaskScheduler' +2025-10-24 04:27:52.106 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:28:02.127 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:28:02 + → module: 'TaskScheduler' +2025-10-24 04:28:02.127 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:28:12.159 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:28:12 + → module: 'TaskScheduler' +2025-10-24 04:28:12.159 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:28:22.191 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:28:22 + → module: 'TaskScheduler' +2025-10-24 04:28:22.191 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:28:32.203 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:28:32 + → module: 'TaskScheduler' +2025-10-24 04:28:32.203 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:28:42.213 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:28:42 + → module: 'TaskScheduler' +2025-10-24 04:28:42.213 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:28:52.244 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:28:52 + → module: 'TaskScheduler' +2025-10-24 04:28:52.244 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:29:02.252 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:29:02 + → module: 'TaskScheduler' +2025-10-24 04:29:02.252 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:29:12.259 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:29:12 + → module: 'TaskScheduler' +2025-10-24 04:29:12.259 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:29:22.267 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:29:22 + → module: 'TaskScheduler' +2025-10-24 04:29:22.267 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:29:32.298 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:29:32 + → module: 'TaskScheduler' +2025-10-24 04:29:32.298 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:29:42.306 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:29:42 + → module: 'TaskScheduler' +2025-10-24 04:29:42.306 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:29:52.314 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:29:52 + → module: 'TaskScheduler' +2025-10-24 04:29:52.314 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:30:02.341 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:30:02 + → module: 'TaskScheduler' +2025-10-24 04:30:02.341 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:30:02.350 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:30:02.360 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 04:30:02.360 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:30:02.361 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 04:30:02.361 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 04:30:02.361 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 04:30:02.366 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 04:30:02.372 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 04:30:02.372 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 04:30:02.374 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:30:02.374 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:30:02.374 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 04:30:02.798 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:30:02.817 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:30:02.836 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:30:03.213 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:30:03.216 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 04:30:03.216 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.84秒 + → module: 'NewsAPIClient' +2025-10-24 04:30:03.217 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 04:30:03.220 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 04:30:03.223 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 04:30:03.225 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 04:30:03.228 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:30:03.229 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:30:03.229 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.87秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 04:30:03.239 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 04:30:03.239 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:30:12.363 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:30:12 + → module: 'TaskScheduler' +2025-10-24 04:30:12.363 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:30:22.393 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:30:22 + → module: 'TaskScheduler' +2025-10-24 04:30:22.393 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:30:32.400 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:30:32 + → module: 'TaskScheduler' +2025-10-24 04:30:32.400 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:30:42.408 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:30:42 + → module: 'TaskScheduler' +2025-10-24 04:30:42.408 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:30:52.416 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:30:52 + → module: 'TaskScheduler' +2025-10-24 04:30:52.416 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:31:02.424 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:31:02 + → module: 'TaskScheduler' +2025-10-24 04:31:02.424 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:31:12.432 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:31:12 + → module: 'TaskScheduler' +2025-10-24 04:31:12.432 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:31:22.449 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:31:22 + → module: 'TaskScheduler' +2025-10-24 04:31:22.449 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:31:32.457 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:31:32 + → module: 'TaskScheduler' +2025-10-24 04:31:32.457 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:31:42.486 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:31:42 + → module: 'TaskScheduler' +2025-10-24 04:31:42.486 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:31:52.493 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:31:52 + → module: 'TaskScheduler' +2025-10-24 04:31:52.493 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:32:02.501 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:32:02 + → module: 'TaskScheduler' +2025-10-24 04:32:02.501 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:32:12.509 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:32:12 + → module: 'TaskScheduler' +2025-10-24 04:32:12.510 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:32:22.521 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:32:22 + → module: 'TaskScheduler' +2025-10-24 04:32:22.521 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:32:32.546 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:32:32 + → module: 'TaskScheduler' +2025-10-24 04:32:32.546 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:32:42.574 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:32:42 + → module: 'TaskScheduler' +2025-10-24 04:32:42.574 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:32:52.585 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:32:52 + → module: 'TaskScheduler' +2025-10-24 04:32:52.585 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:33:02.592 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:33:02 + → module: 'TaskScheduler' +2025-10-24 04:33:02.592 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:33:12.601 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:33:12 + → module: 'TaskScheduler' +2025-10-24 04:33:12.601 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:33:22.610 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:33:22 + → module: 'TaskScheduler' +2025-10-24 04:33:22.610 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:33:32.617 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:33:32 + → module: 'TaskScheduler' +2025-10-24 04:33:32.617 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:33:42.625 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:33:42 + → module: 'TaskScheduler' +2025-10-24 04:33:42.626 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:33:52.634 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:33:52 + → module: 'TaskScheduler' +2025-10-24 04:33:52.634 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:34:02.663 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:34:02 + → module: 'TaskScheduler' +2025-10-24 04:34:02.663 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:34:12.674 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:34:12 + → module: 'TaskScheduler' +2025-10-24 04:34:12.674 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:34:22.699 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:34:22 + → module: 'TaskScheduler' +2025-10-24 04:34:22.699 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:34:32.708 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:34:32 + → module: 'TaskScheduler' +2025-10-24 04:34:32.708 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:34:42.715 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:34:42 + → module: 'TaskScheduler' +2025-10-24 04:34:42.715 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:34:52.728 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:34:52 + → module: 'TaskScheduler' +2025-10-24 04:34:52.728 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:35:02.737 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:35:02 + → module: 'TaskScheduler' +2025-10-24 04:35:02.737 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:35:02.746 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:35:02.754 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 04:35:02.755 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:35:02.755 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 04:35:02.755 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 04:35:02.755 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 04:35:02.780 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 04:35:02.795 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 04:35:02.796 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 04:35:02.796 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:35:02.797 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:35:02.797 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 04:35:03.271 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:35:03.282 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:35:03.295 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:35:03.609 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:35:03.612 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 04:35:03.612 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.81秒 + → module: 'NewsAPIClient' +2025-10-24 04:35:03.613 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 04:35:03.613 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 04:35:03.614 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 04:35:03.616 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 04:35:03.618 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:35:03.618 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:35:03.618 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.86秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 04:35:03.626 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 04:35:03.627 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:35:12.757 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:35:12 + → module: 'TaskScheduler' +2025-10-24 04:35:12.757 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:35:22.766 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:35:22 + → module: 'TaskScheduler' +2025-10-24 04:35:22.766 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:35:32.789 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:35:32 + → module: 'TaskScheduler' +2025-10-24 04:35:32.789 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:35:42.800 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:35:42 + → module: 'TaskScheduler' +2025-10-24 04:35:42.800 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:35:52.810 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:35:52 + → module: 'TaskScheduler' +2025-10-24 04:35:52.811 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:36:02.820 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:36:02 + → module: 'TaskScheduler' +2025-10-24 04:36:02.820 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:36:12.852 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:36:12 + → module: 'TaskScheduler' +2025-10-24 04:36:12.852 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:36:22.863 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:36:22 + → module: 'TaskScheduler' +2025-10-24 04:36:22.863 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:36:32.871 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:36:32 + → module: 'TaskScheduler' +2025-10-24 04:36:32.871 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:36:42.878 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:36:42 + → module: 'TaskScheduler' +2025-10-24 04:36:42.878 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:36:52.887 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:36:52 + → module: 'TaskScheduler' +2025-10-24 04:36:52.887 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:37:02.919 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:37:02 + → module: 'TaskScheduler' +2025-10-24 04:37:02.919 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:37:12.930 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:37:12 + → module: 'TaskScheduler' +2025-10-24 04:37:12.930 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:37:22.937 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:37:22 + → module: 'TaskScheduler' +2025-10-24 04:37:22.938 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:37:32.945 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:37:32 + → module: 'TaskScheduler' +2025-10-24 04:37:32.945 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:37:42.953 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:37:42 + → module: 'TaskScheduler' +2025-10-24 04:37:42.953 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:37:52.960 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:37:52 + → module: 'TaskScheduler' +2025-10-24 04:37:52.960 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:38:02.970 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:38:02 + → module: 'TaskScheduler' +2025-10-24 04:38:02.970 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:38:12.980 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:38:12 + → module: 'TaskScheduler' +2025-10-24 04:38:12.980 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:38:22.988 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:38:22 + → module: 'TaskScheduler' +2025-10-24 04:38:22.989 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:38:33.007 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:38:33 + → module: 'TaskScheduler' +2025-10-24 04:38:33.007 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:38:43.015 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:38:43 + → module: 'TaskScheduler' +2025-10-24 04:38:43.015 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:38:53.022 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:38:53 + → module: 'TaskScheduler' +2025-10-24 04:38:53.022 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:39:03.029 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:39:03 + → module: 'TaskScheduler' +2025-10-24 04:39:03.029 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:39:13.038 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:39:13 + → module: 'TaskScheduler' +2025-10-24 04:39:13.038 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:39:23.067 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:39:23 + → module: 'TaskScheduler' +2025-10-24 04:39:23.067 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:39:33.075 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:39:33 + → module: 'TaskScheduler' +2025-10-24 04:39:33.075 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:39:43.083 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:39:43 + → module: 'TaskScheduler' +2025-10-24 04:39:43.083 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:39:53.114 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:39:53 + → module: 'TaskScheduler' +2025-10-24 04:39:53.114 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:40:03.133 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:40:03 + → module: 'TaskScheduler' +2025-10-24 04:40:03.133 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:40:03.155 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:40:03.221 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 04:40:03.222 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:40:03.222 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 04:40:03.223 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 04:40:03.223 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 04:40:03.227 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 04:40:03.230 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 04:40:03.231 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 04:40:03.233 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:40:03.233 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:40:03.233 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 04:40:03.649 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:40:03.660 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:40:03.673 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:40:03.983 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:40:03.984 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 04:40:03.984 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.75秒 + → module: 'NewsAPIClient' +2025-10-24 04:40:03.986 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 04:40:03.987 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 04:40:03.987 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 04:40:03.989 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 04:40:03.990 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:40:03.991 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:40:03.991 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.77秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 04:40:04.028 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 04:40:04.028 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:40:13.224 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:40:13 + → module: 'TaskScheduler' +2025-10-24 04:40:13.224 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:40:23.256 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:40:23 + → module: 'TaskScheduler' +2025-10-24 04:40:23.256 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:40:33.263 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:40:33 + → module: 'TaskScheduler' +2025-10-24 04:40:33.263 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:40:43.272 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:40:43 + → module: 'TaskScheduler' +2025-10-24 04:40:43.272 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:40:53.280 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:40:53 + → module: 'TaskScheduler' +2025-10-24 04:40:53.280 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:41:03.288 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:41:03 + → module: 'TaskScheduler' +2025-10-24 04:41:03.288 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:41:13.296 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:41:13 + → module: 'TaskScheduler' +2025-10-24 04:41:13.296 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:41:23.304 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:41:23 + → module: 'TaskScheduler' +2025-10-24 04:41:23.304 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:41:33.326 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:41:33 + → module: 'TaskScheduler' +2025-10-24 04:41:33.326 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:41:43.334 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:41:43 + → module: 'TaskScheduler' +2025-10-24 04:41:43.334 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:41:53.361 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:41:53 + → module: 'TaskScheduler' +2025-10-24 04:41:53.361 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:42:03.389 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:42:03 + → module: 'TaskScheduler' +2025-10-24 04:42:03.390 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:42:13.398 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:42:13 + → module: 'TaskScheduler' +2025-10-24 04:42:13.398 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:42:23.406 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:42:23 + → module: 'TaskScheduler' +2025-10-24 04:42:23.406 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:42:33.414 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:42:33 + → module: 'TaskScheduler' +2025-10-24 04:42:33.414 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:42:43.421 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:42:43 + → module: 'TaskScheduler' +2025-10-24 04:42:43.421 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:42:53.440 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:42:53 + → module: 'TaskScheduler' +2025-10-24 04:42:53.440 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:43:03.468 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:43:03 + → module: 'TaskScheduler' +2025-10-24 04:43:03.468 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:43:13.478 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:43:13 + → module: 'TaskScheduler' +2025-10-24 04:43:13.478 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:43:23.485 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:43:23 + → module: 'TaskScheduler' +2025-10-24 04:43:23.485 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:43:33.511 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:43:33 + → module: 'TaskScheduler' +2025-10-24 04:43:33.511 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:43:43.520 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:43:43 + → module: 'TaskScheduler' +2025-10-24 04:43:43.520 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:43:53.550 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:43:53 + → module: 'TaskScheduler' +2025-10-24 04:43:53.551 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:44:03.559 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:44:03 + → module: 'TaskScheduler' +2025-10-24 04:44:03.559 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:44:13.567 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:44:13 + → module: 'TaskScheduler' +2025-10-24 04:44:13.567 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:44:23.600 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:44:23 + → module: 'TaskScheduler' +2025-10-24 04:44:23.600 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:44:33.610 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:44:33 + → module: 'TaskScheduler' +2025-10-24 04:44:33.610 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:44:43.634 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:44:43 + → module: 'TaskScheduler' +2025-10-24 04:44:43.634 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:44:53.665 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:44:53 + → module: 'TaskScheduler' +2025-10-24 04:44:53.665 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:45:03.672 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:45:03 + → module: 'TaskScheduler' +2025-10-24 04:45:03.672 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:45:03.682 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:45:03.695 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 04:45:03.695 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:45:03.696 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 04:45:03.696 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 04:45:03.696 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 04:45:03.700 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 04:45:03.724 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 04:45:03.724 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 04:45:03.725 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:45:03.726 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:45:03.726 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 04:45:04.148 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:45:04.159 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:45:04.198 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:45:04.562 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:45:04.564 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 04:45:04.564 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.84秒 + → module: 'NewsAPIClient' +2025-10-24 04:45:04.564 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 04:45:04.565 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 04:45:04.567 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 04:45:04.568 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 04:45:04.570 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:45:04.570 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:45:04.571 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.88秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 04:45:04.580 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 04:45:04.580 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:45:13.698 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:45:13 + → module: 'TaskScheduler' +2025-10-24 04:45:13.698 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:45:23.732 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:45:23 + → module: 'TaskScheduler' +2025-10-24 04:45:23.732 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:45:33.739 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:45:33 + → module: 'TaskScheduler' +2025-10-24 04:45:33.739 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:45:43.747 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:45:43 + → module: 'TaskScheduler' +2025-10-24 04:45:43.747 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:45:53.756 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:45:53 + → module: 'TaskScheduler' +2025-10-24 04:45:53.756 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:46:03.765 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:46:03 + → module: 'TaskScheduler' +2025-10-24 04:46:03.765 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:46:13.774 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:46:13 + → module: 'TaskScheduler' +2025-10-24 04:46:13.774 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:46:23.798 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:46:23 + → module: 'TaskScheduler' +2025-10-24 04:46:23.798 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:46:33.806 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:46:33 + → module: 'TaskScheduler' +2025-10-24 04:46:33.806 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:46:43.813 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:46:43 + → module: 'TaskScheduler' +2025-10-24 04:46:43.814 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:46:53.821 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:46:53 + → module: 'TaskScheduler' +2025-10-24 04:46:53.821 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:47:03.846 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:47:03 + → module: 'TaskScheduler' +2025-10-24 04:47:03.846 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:47:13.854 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:47:13 + → module: 'TaskScheduler' +2025-10-24 04:47:13.854 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:47:23.863 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:47:23 + → module: 'TaskScheduler' +2025-10-24 04:47:23.863 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:47:33.873 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:47:33 + → module: 'TaskScheduler' +2025-10-24 04:47:33.873 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:47:43.900 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:47:43 + → module: 'TaskScheduler' +2025-10-24 04:47:43.900 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:47:53.922 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:47:53 + → module: 'TaskScheduler' +2025-10-24 04:47:53.922 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:48:03.932 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:48:03 + → module: 'TaskScheduler' +2025-10-24 04:48:03.932 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:48:13.939 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:48:13 + → module: 'TaskScheduler' +2025-10-24 04:48:13.939 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:48:23.948 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:48:23 + → module: 'TaskScheduler' +2025-10-24 04:48:23.948 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:48:33.969 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:48:33 + → module: 'TaskScheduler' +2025-10-24 04:48:33.969 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:48:43.977 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:48:43 + → module: 'TaskScheduler' +2025-10-24 04:48:43.977 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:48:53.985 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:48:53 + → module: 'TaskScheduler' +2025-10-24 04:48:53.985 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:49:03.994 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:49:03 + → module: 'TaskScheduler' +2025-10-24 04:49:03.994 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:49:14.022 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:49:14 + → module: 'TaskScheduler' +2025-10-24 04:49:14.022 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:49:24.029 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:49:24 + → module: 'TaskScheduler' +2025-10-24 04:49:24.029 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:49:34.036 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:49:34 + → module: 'TaskScheduler' +2025-10-24 04:49:34.036 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:49:44.063 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:49:44 + → module: 'TaskScheduler' +2025-10-24 04:49:44.064 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:49:54.072 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:49:54 + → module: 'TaskScheduler' +2025-10-24 04:49:54.072 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:50:04.080 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:50:04 + → module: 'TaskScheduler' +2025-10-24 04:50:04.080 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:50:04.101 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:50:04.133 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 04:50:04.133 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:50:04.134 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 04:50:04.134 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 04:50:04.134 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 04:50:04.138 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 04:50:04.159 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 04:50:04.160 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 04:50:04.161 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:50:04.161 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:50:04.161 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 04:50:04.580 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:50:04.618 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:50:04.646 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:50:04.937 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:50:04.939 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 04:50:04.939 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.78秒 + → module: 'NewsAPIClient' +2025-10-24 04:50:04.939 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 04:50:04.940 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 04:50:04.941 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 04:50:04.942 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 04:50:04.944 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:50:04.944 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:50:04.944 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.81秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 04:50:04.954 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 04:50:04.954 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:50:14.135 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:50:14 + → module: 'TaskScheduler' +2025-10-24 04:50:14.136 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:50:24.158 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:50:24 + → module: 'TaskScheduler' +2025-10-24 04:50:24.159 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:50:34.171 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:50:34 + → module: 'TaskScheduler' +2025-10-24 04:50:34.171 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:50:44.178 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:50:44 + → module: 'TaskScheduler' +2025-10-24 04:50:44.178 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:50:54.201 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:50:54 + → module: 'TaskScheduler' +2025-10-24 04:50:54.201 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:51:04.226 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:51:04 + → module: 'TaskScheduler' +2025-10-24 04:51:04.226 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:51:14.248 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:51:14 + → module: 'TaskScheduler' +2025-10-24 04:51:14.248 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:51:24.255 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:51:24 + → module: 'TaskScheduler' +2025-10-24 04:51:24.255 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:51:34.273 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:51:34 + → module: 'TaskScheduler' +2025-10-24 04:51:34.273 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:51:44.297 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:51:44 + → module: 'TaskScheduler' +2025-10-24 04:51:44.298 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:51:54.306 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:51:54 + → module: 'TaskScheduler' +2025-10-24 04:51:54.306 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:52:04.314 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:52:04 + → module: 'TaskScheduler' +2025-10-24 04:52:04.314 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:52:14.336 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:52:14 + → module: 'TaskScheduler' +2025-10-24 04:52:14.336 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:52:24.348 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:52:24 + → module: 'TaskScheduler' +2025-10-24 04:52:24.348 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:52:34.357 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:52:34 + → module: 'TaskScheduler' +2025-10-24 04:52:34.357 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:52:44.365 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:52:44 + → module: 'TaskScheduler' +2025-10-24 04:52:44.365 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:52:54.373 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:52:54 + → module: 'TaskScheduler' +2025-10-24 04:52:54.373 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:53:04.381 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:53:04 + → module: 'TaskScheduler' +2025-10-24 04:53:04.381 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:53:14.390 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:53:14 + → module: 'TaskScheduler' +2025-10-24 04:53:14.390 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:53:24.413 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:53:24 + → module: 'TaskScheduler' +2025-10-24 04:53:24.413 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:53:34.444 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:53:34 + → module: 'TaskScheduler' +2025-10-24 04:53:34.444 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:53:44.454 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:53:44 + → module: 'TaskScheduler' +2025-10-24 04:53:44.454 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:53:54.464 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:53:54 + → module: 'TaskScheduler' +2025-10-24 04:53:54.464 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:54:04.477 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:54:04 + → module: 'TaskScheduler' +2025-10-24 04:54:04.477 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:54:14.486 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:54:14 + → module: 'TaskScheduler' +2025-10-24 04:54:14.486 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:54:24.517 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:54:24 + → module: 'TaskScheduler' +2025-10-24 04:54:24.517 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:54:34.524 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:54:34 + → module: 'TaskScheduler' +2025-10-24 04:54:34.524 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:54:44.532 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:54:44 + → module: 'TaskScheduler' +2025-10-24 04:54:44.532 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:54:54.542 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:54:54 + → module: 'TaskScheduler' +2025-10-24 04:54:54.542 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:55:04.550 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:55:04 + → module: 'TaskScheduler' +2025-10-24 04:55:04.550 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:55:04.581 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:55:04.602 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 04:55:04.603 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:55:04.604 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 04:55:04.604 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 04:55:04.604 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 04:55:04.622 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 04:55:04.625 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 04:55:04.625 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 04:55:04.626 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:55:04.626 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:55:04.627 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 04:55:05.078 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:55:05.089 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:55:05.098 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:55:05.411 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 04:55:05.413 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 04:55:05.414 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.79秒 + → module: 'NewsAPIClient' +2025-10-24 04:55:05.414 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 04:55:05.415 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 04:55:05.416 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 04:55:05.417 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 04:55:05.418 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:55:05.418 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 04:55:05.419 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.82秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 04:55:05.427 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 04:55:05.428 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 04:55:14.605 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:55:14 + → module: 'TaskScheduler' +2025-10-24 04:55:14.605 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:55:24.628 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:55:24 + → module: 'TaskScheduler' +2025-10-24 04:55:24.629 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:55:34.641 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:55:34 + → module: 'TaskScheduler' +2025-10-24 04:55:34.641 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:55:44.673 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:55:44 + → module: 'TaskScheduler' +2025-10-24 04:55:44.673 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:55:54.681 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:55:54 + → module: 'TaskScheduler' +2025-10-24 04:55:54.682 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:56:04.708 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:56:04 + → module: 'TaskScheduler' +2025-10-24 04:56:04.708 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:56:14.731 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:56:14 + → module: 'TaskScheduler' +2025-10-24 04:56:14.731 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:56:24.740 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:56:24 + → module: 'TaskScheduler' +2025-10-24 04:56:24.740 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:56:34.772 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:56:34 + → module: 'TaskScheduler' +2025-10-24 04:56:34.772 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:56:44.782 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:56:44 + → module: 'TaskScheduler' +2025-10-24 04:56:44.783 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:56:54.793 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:56:54 + → module: 'TaskScheduler' +2025-10-24 04:56:54.793 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:57:04.800 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:57:04 + → module: 'TaskScheduler' +2025-10-24 04:57:04.801 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:57:14.809 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:57:14 + → module: 'TaskScheduler' +2025-10-24 04:57:14.809 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:57:24.817 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:57:24 + → module: 'TaskScheduler' +2025-10-24 04:57:24.817 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:57:34.825 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:57:34 + → module: 'TaskScheduler' +2025-10-24 04:57:34.826 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:57:44.835 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:57:44 + → module: 'TaskScheduler' +2025-10-24 04:57:44.835 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:57:54.843 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:57:54 + → module: 'TaskScheduler' +2025-10-24 04:57:54.843 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:58:04.850 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:58:04 + → module: 'TaskScheduler' +2025-10-24 04:58:04.850 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:58:14.882 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:58:14 + → module: 'TaskScheduler' +2025-10-24 04:58:14.882 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:58:24.902 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:58:24 + → module: 'TaskScheduler' +2025-10-24 04:58:24.902 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:58:34.922 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:58:34 + → module: 'TaskScheduler' +2025-10-24 04:58:34.922 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:58:44.939 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:58:44 + → module: 'TaskScheduler' +2025-10-24 04:58:44.939 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:58:54.969 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:58:54 + → module: 'TaskScheduler' +2025-10-24 04:58:54.969 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:59:04.977 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:59:04 + → module: 'TaskScheduler' +2025-10-24 04:59:04.977 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:59:14.986 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:59:14 + → module: 'TaskScheduler' +2025-10-24 04:59:14.986 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:59:24.995 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:59:24 + → module: 'TaskScheduler' +2025-10-24 04:59:24.995 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:59:35.016 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:59:35 + → module: 'TaskScheduler' +2025-10-24 04:59:35.016 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:59:45.042 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:59:45 + → module: 'TaskScheduler' +2025-10-24 04:59:45.042 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 04:59:55.053 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 04:59:55 + → module: 'TaskScheduler' +2025-10-24 04:59:55.053 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:00:05.074 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:00:05 + → module: 'TaskScheduler' +2025-10-24 05:00:05.075 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:00:05.086 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:00:05.131 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 05:00:05.132 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:00:05.132 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 05:00:05.132 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 05:00:05.132 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 05:00:05.137 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 05:00:05.152 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 05:00:05.153 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 05:00:05.154 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:00:05.154 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:00:05.154 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 05:00:05.613 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:00:05.646 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:00:05.659 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:00:05.991 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:00:05.993 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 05:00:05.994 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.84秒 + → module: 'NewsAPIClient' +2025-10-24 05:00:05.994 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 05:00:05.995 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 05:00:05.996 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 05:00:05.998 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 05:00:06.001 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:00:06.002 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:00:06.002 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.87秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 05:00:06.013 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 05:00:06.014 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:00:15.134 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:00:15 + → module: 'TaskScheduler' +2025-10-24 05:00:15.135 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:00:25.145 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:00:25 + → module: 'TaskScheduler' +2025-10-24 05:00:25.145 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:00:35.155 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:00:35 + → module: 'TaskScheduler' +2025-10-24 05:00:35.155 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:00:45.162 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:00:45 + → module: 'TaskScheduler' +2025-10-24 05:00:45.163 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:00:55.183 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:00:55 + → module: 'TaskScheduler' +2025-10-24 05:00:55.183 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:01:05.192 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:01:05 + → module: 'TaskScheduler' +2025-10-24 05:01:05.192 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:01:15.219 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:01:15 + → module: 'TaskScheduler' +2025-10-24 05:01:15.219 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:01:25.239 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:01:25 + → module: 'TaskScheduler' +2025-10-24 05:01:25.239 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:01:35.250 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:01:35 + → module: 'TaskScheduler' +2025-10-24 05:01:35.250 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:01:45.257 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:01:45 + → module: 'TaskScheduler' +2025-10-24 05:01:45.257 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:01:55.265 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:01:55 + → module: 'TaskScheduler' +2025-10-24 05:01:55.265 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:02:05.283 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:02:05 + → module: 'TaskScheduler' +2025-10-24 05:02:05.283 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:02:15.304 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:02:15 + → module: 'TaskScheduler' +2025-10-24 05:02:15.304 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:02:25.312 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:02:25 + → module: 'TaskScheduler' +2025-10-24 05:02:25.312 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:02:35.321 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:02:35 + → module: 'TaskScheduler' +2025-10-24 05:02:35.321 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:02:45.356 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:02:45 + → module: 'TaskScheduler' +2025-10-24 05:02:45.356 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:02:55.363 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:02:55 + → module: 'TaskScheduler' +2025-10-24 05:02:55.363 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:03:05.390 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:03:05 + → module: 'TaskScheduler' +2025-10-24 05:03:05.390 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:03:15.397 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:03:15 + → module: 'TaskScheduler' +2025-10-24 05:03:15.397 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:03:25.404 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:03:25 + → module: 'TaskScheduler' +2025-10-24 05:03:25.404 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:03:35.438 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:03:35 + → module: 'TaskScheduler' +2025-10-24 05:03:35.438 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:03:45.463 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:03:45 + → module: 'TaskScheduler' +2025-10-24 05:03:45.463 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:03:55.487 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:03:55 + → module: 'TaskScheduler' +2025-10-24 05:03:55.487 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:04:05.510 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:04:05 + → module: 'TaskScheduler' +2025-10-24 05:04:05.510 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:04:15.536 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:04:15 + → module: 'TaskScheduler' +2025-10-24 05:04:15.536 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:04:25.562 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:04:25 + → module: 'TaskScheduler' +2025-10-24 05:04:25.562 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:04:35.569 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:04:35 + → module: 'TaskScheduler' +2025-10-24 05:04:35.569 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:04:45.596 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:04:45 + → module: 'TaskScheduler' +2025-10-24 05:04:45.596 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:04:55.610 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:04:55 + → module: 'TaskScheduler' +2025-10-24 05:04:55.610 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:05:05.619 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:05:05 + → module: 'TaskScheduler' +2025-10-24 05:05:05.619 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:05:05.639 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:05:05.662 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 05:05:05.663 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:05:05.664 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 05:05:05.664 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 05:05:05.664 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 05:05:05.667 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 05:05:05.694 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 05:05:05.695 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 05:05:05.695 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:05:05.695 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:05:05.697 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 05:05:06.096 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:05:06.135 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:05:06.148 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:05:06.443 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:05:06.444 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 05:05:06.445 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.75秒 + → module: 'NewsAPIClient' +2025-10-24 05:05:06.445 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 05:05:06.446 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 05:05:06.447 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 05:05:06.448 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 05:05:06.451 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:05:06.451 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:05:06.451 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.79秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 05:05:06.495 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 05:05:06.495 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:05:15.665 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:05:15 + → module: 'TaskScheduler' +2025-10-24 05:05:15.665 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:05:25.675 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:05:25 + → module: 'TaskScheduler' +2025-10-24 05:05:25.676 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:05:35.684 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:05:35 + → module: 'TaskScheduler' +2025-10-24 05:05:35.684 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:05:45.693 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:05:45 + → module: 'TaskScheduler' +2025-10-24 05:05:45.693 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:05:55.702 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:05:55 + → module: 'TaskScheduler' +2025-10-24 05:05:55.702 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:06:05.734 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:06:05 + → module: 'TaskScheduler' +2025-10-24 05:06:05.734 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:06:15.742 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:06:15 + → module: 'TaskScheduler' +2025-10-24 05:06:15.742 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:06:25.750 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:06:25 + → module: 'TaskScheduler' +2025-10-24 05:06:25.750 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:06:35.776 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:06:35 + → module: 'TaskScheduler' +2025-10-24 05:06:35.776 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:06:45.786 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:06:45 + → module: 'TaskScheduler' +2025-10-24 05:06:45.786 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:06:55.793 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:06:55 + → module: 'TaskScheduler' +2025-10-24 05:06:55.794 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:07:05.806 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:07:05 + → module: 'TaskScheduler' +2025-10-24 05:07:05.806 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:07:15.813 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:07:15 + → module: 'TaskScheduler' +2025-10-24 05:07:15.813 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:07:25.821 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:07:25 + → module: 'TaskScheduler' +2025-10-24 05:07:25.821 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:07:35.841 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:07:35 + → module: 'TaskScheduler' +2025-10-24 05:07:35.841 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:07:45.861 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:07:45 + → module: 'TaskScheduler' +2025-10-24 05:07:45.861 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:07:55.892 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:07:55 + → module: 'TaskScheduler' +2025-10-24 05:07:55.892 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:08:05.902 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:08:05 + → module: 'TaskScheduler' +2025-10-24 05:08:05.902 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:08:15.928 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:08:15 + → module: 'TaskScheduler' +2025-10-24 05:08:15.928 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:08:25.961 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:08:25 + → module: 'TaskScheduler' +2025-10-24 05:08:25.961 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:08:35.980 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:08:35 + → module: 'TaskScheduler' +2025-10-24 05:08:35.980 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:08:45.989 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:08:45 + → module: 'TaskScheduler' +2025-10-24 05:08:45.990 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:08:45.998 | INFO | main:87 - 小时任务统计 + → module: 'Main' + → 总任务数: 12 + → 成功: 12 + → 失败: 0 +2025-10-24 05:08:55.999 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:08:55 + → module: 'TaskScheduler' +2025-10-24 05:08:55.999 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:09:06.008 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:09:06 + → module: 'TaskScheduler' +2025-10-24 05:09:06.008 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:09:16.016 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:09:16 + → module: 'TaskScheduler' +2025-10-24 05:09:16.016 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:09:26.025 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:09:26 + → module: 'TaskScheduler' +2025-10-24 05:09:26.025 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:09:36.032 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:09:36 + → module: 'TaskScheduler' +2025-10-24 05:09:36.033 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:09:46.051 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:09:46 + → module: 'TaskScheduler' +2025-10-24 05:09:46.051 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:09:56.059 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:09:56 + → module: 'TaskScheduler' +2025-10-24 05:09:56.059 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:10:06.068 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:10:06 + → module: 'TaskScheduler' +2025-10-24 05:10:06.068 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:10:06.093 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:10:06.140 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 05:10:06.141 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:10:06.141 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 05:10:06.141 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 05:10:06.142 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 05:10:06.167 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 05:10:06.183 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 05:10:06.184 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 05:10:06.184 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:10:06.185 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:10:06.185 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 05:10:06.600 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:10:06.663 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:10:06.677 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:10:06.965 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:10:06.967 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 05:10:06.967 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.78秒 + → module: 'NewsAPIClient' +2025-10-24 05:10:06.967 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 05:10:06.968 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 05:10:06.969 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 05:10:06.970 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 05:10:06.971 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:10:06.972 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:10:06.972 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.83秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 05:10:07.010 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 05:10:07.011 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:10:16.142 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:10:16 + → module: 'TaskScheduler' +2025-10-24 05:10:16.142 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:10:26.151 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:10:26 + → module: 'TaskScheduler' +2025-10-24 05:10:26.151 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:10:36.161 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:10:36 + → module: 'TaskScheduler' +2025-10-24 05:10:36.161 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:10:46.169 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:10:46 + → module: 'TaskScheduler' +2025-10-24 05:10:46.169 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:10:56.177 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:10:56 + → module: 'TaskScheduler' +2025-10-24 05:10:56.177 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:11:06.195 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:11:06 + → module: 'TaskScheduler' +2025-10-24 05:11:06.195 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:11:16.228 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:11:16 + → module: 'TaskScheduler' +2025-10-24 05:11:16.228 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:11:26.247 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:11:26 + → module: 'TaskScheduler' +2025-10-24 05:11:26.247 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:11:36.258 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:11:36 + → module: 'TaskScheduler' +2025-10-24 05:11:36.259 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:11:46.292 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:11:46 + → module: 'TaskScheduler' +2025-10-24 05:11:46.292 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:11:56.311 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:11:56 + → module: 'TaskScheduler' +2025-10-24 05:11:56.311 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:12:06.336 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:12:06 + → module: 'TaskScheduler' +2025-10-24 05:12:06.336 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:12:16.344 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:12:16 + → module: 'TaskScheduler' +2025-10-24 05:12:16.344 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:12:26.354 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:12:26 + → module: 'TaskScheduler' +2025-10-24 05:12:26.354 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:12:36.382 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:12:36 + → module: 'TaskScheduler' +2025-10-24 05:12:36.382 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:12:46.410 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:12:46 + → module: 'TaskScheduler' +2025-10-24 05:12:46.410 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:12:56.419 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:12:56 + → module: 'TaskScheduler' +2025-10-24 05:12:56.419 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:13:06.429 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:13:06 + → module: 'TaskScheduler' +2025-10-24 05:13:06.429 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:13:16.449 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:13:16 + → module: 'TaskScheduler' +2025-10-24 05:13:16.449 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:13:26.472 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:13:26 + → module: 'TaskScheduler' +2025-10-24 05:13:26.472 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:13:36.494 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:13:36 + → module: 'TaskScheduler' +2025-10-24 05:13:36.494 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:13:46.501 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:13:46 + → module: 'TaskScheduler' +2025-10-24 05:13:46.501 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:13:56.514 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:13:56 + → module: 'TaskScheduler' +2025-10-24 05:13:56.514 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:14:06.538 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:14:06 + → module: 'TaskScheduler' +2025-10-24 05:14:06.538 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:14:16.545 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:14:16 + → module: 'TaskScheduler' +2025-10-24 05:14:16.545 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:14:26.575 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:14:26 + → module: 'TaskScheduler' +2025-10-24 05:14:26.575 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:14:36.581 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:14:36 + → module: 'TaskScheduler' +2025-10-24 05:14:36.581 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:14:46.589 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:14:46 + → module: 'TaskScheduler' +2025-10-24 05:14:46.589 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:14:56.619 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:14:56 + → module: 'TaskScheduler' +2025-10-24 05:14:56.619 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:15:06.627 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:15:06 + → module: 'TaskScheduler' +2025-10-24 05:15:06.627 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:15:06.644 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:15:06.690 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 05:15:06.690 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:15:06.690 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 05:15:06.690 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 05:15:06.692 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 05:15:06.719 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 05:15:06.734 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 05:15:06.735 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 05:15:06.736 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:15:06.736 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:15:06.736 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 05:15:07.183 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:15:07.201 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:15:07.239 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:15:07.531 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:15:07.532 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 05:15:07.533 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.80秒 + → module: 'NewsAPIClient' +2025-10-24 05:15:07.533 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 05:15:07.534 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 05:15:07.534 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 05:15:07.538 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 05:15:07.540 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:15:07.540 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:15:07.540 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.85秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 05:15:07.551 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 05:15:07.551 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:15:16.692 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:15:16 + → module: 'TaskScheduler' +2025-10-24 05:15:16.692 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:15:26.699 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:15:26 + → module: 'TaskScheduler' +2025-10-24 05:15:26.699 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:15:36.731 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:15:36 + → module: 'TaskScheduler' +2025-10-24 05:15:36.731 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:15:46.739 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:15:46 + → module: 'TaskScheduler' +2025-10-24 05:15:46.739 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:15:56.748 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:15:56 + → module: 'TaskScheduler' +2025-10-24 05:15:56.748 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:16:06.772 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:16:06 + → module: 'TaskScheduler' +2025-10-24 05:16:06.772 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:16:16.796 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:16:16 + → module: 'TaskScheduler' +2025-10-24 05:16:16.796 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:16:26.804 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:16:26 + → module: 'TaskScheduler' +2025-10-24 05:16:26.804 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:16:36.830 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:16:36 + → module: 'TaskScheduler' +2025-10-24 05:16:36.831 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:16:46.843 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:16:46 + → module: 'TaskScheduler' +2025-10-24 05:16:46.843 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:16:56.852 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:16:56 + → module: 'TaskScheduler' +2025-10-24 05:16:56.852 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:17:06.861 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:17:06 + → module: 'TaskScheduler' +2025-10-24 05:17:06.861 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:17:16.869 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:17:16 + → module: 'TaskScheduler' +2025-10-24 05:17:16.869 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:17:26.878 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:17:26 + → module: 'TaskScheduler' +2025-10-24 05:17:26.878 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:17:36.908 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:17:36 + → module: 'TaskScheduler' +2025-10-24 05:17:36.908 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:17:46.917 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:17:46 + → module: 'TaskScheduler' +2025-10-24 05:17:46.917 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:17:56.926 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:17:56 + → module: 'TaskScheduler' +2025-10-24 05:17:56.926 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:18:06.933 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:18:06 + → module: 'TaskScheduler' +2025-10-24 05:18:06.934 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:18:16.944 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:18:16 + → module: 'TaskScheduler' +2025-10-24 05:18:16.944 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:18:26.953 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:18:26 + → module: 'TaskScheduler' +2025-10-24 05:18:26.953 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:18:36.961 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:18:36 + → module: 'TaskScheduler' +2025-10-24 05:18:36.961 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:18:46.969 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:18:46 + → module: 'TaskScheduler' +2025-10-24 05:18:46.969 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:18:56.980 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:18:56 + → module: 'TaskScheduler' +2025-10-24 05:18:56.980 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:19:06.990 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:19:06 + → module: 'TaskScheduler' +2025-10-24 05:19:06.990 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:19:16.998 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:19:16 + → module: 'TaskScheduler' +2025-10-24 05:19:16.998 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:19:27.006 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:19:27 + → module: 'TaskScheduler' +2025-10-24 05:19:27.006 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:19:37.013 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:19:37 + → module: 'TaskScheduler' +2025-10-24 05:19:37.014 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:19:47.036 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:19:47 + → module: 'TaskScheduler' +2025-10-24 05:19:47.037 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:19:57.044 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:19:57 + → module: 'TaskScheduler' +2025-10-24 05:19:57.044 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:20:07.055 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:20:07 + → module: 'TaskScheduler' +2025-10-24 05:20:07.055 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:20:07.066 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:20:07.102 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 05:20:07.103 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:20:07.103 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 05:20:07.103 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 05:20:07.104 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 05:20:07.106 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 05:20:07.132 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 05:20:07.132 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 05:20:07.133 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:20:07.133 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:20:07.134 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 05:20:07.534 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:20:07.600 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:20:07.610 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:20:07.885 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:20:07.887 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 05:20:07.888 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.75秒 + → module: 'NewsAPIClient' +2025-10-24 05:20:07.888 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 05:20:07.890 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 05:20:07.890 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 05:20:07.891 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 05:20:07.894 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:20:07.894 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:20:07.894 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.79秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 05:20:07.919 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 05:20:07.919 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:20:17.104 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:20:17 + → module: 'TaskScheduler' +2025-10-24 05:20:17.105 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:20:27.128 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:20:27 + → module: 'TaskScheduler' +2025-10-24 05:20:27.128 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:20:37.150 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:20:37 + → module: 'TaskScheduler' +2025-10-24 05:20:37.150 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:20:47.159 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:20:47 + → module: 'TaskScheduler' +2025-10-24 05:20:47.160 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:20:57.168 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:20:57 + → module: 'TaskScheduler' +2025-10-24 05:20:57.168 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:21:07.177 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:21:07 + → module: 'TaskScheduler' +2025-10-24 05:21:07.177 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:21:17.199 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:21:17 + → module: 'TaskScheduler' +2025-10-24 05:21:17.199 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:21:27.219 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:21:27 + → module: 'TaskScheduler' +2025-10-24 05:21:27.219 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:21:37.244 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:21:37 + → module: 'TaskScheduler' +2025-10-24 05:21:37.244 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:21:47.273 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:21:47 + → module: 'TaskScheduler' +2025-10-24 05:21:47.273 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:21:57.298 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:21:57 + → module: 'TaskScheduler' +2025-10-24 05:21:57.298 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:22:07.318 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:22:07 + → module: 'TaskScheduler' +2025-10-24 05:22:07.318 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:22:17.328 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:22:17 + → module: 'TaskScheduler' +2025-10-24 05:22:17.328 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:22:27.341 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:22:27 + → module: 'TaskScheduler' +2025-10-24 05:22:27.341 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:22:37.371 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:22:37 + → module: 'TaskScheduler' +2025-10-24 05:22:37.371 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:22:47.379 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:22:47 + → module: 'TaskScheduler' +2025-10-24 05:22:47.379 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:22:57.387 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:22:57 + → module: 'TaskScheduler' +2025-10-24 05:22:57.387 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:23:07.419 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:23:07 + → module: 'TaskScheduler' +2025-10-24 05:23:07.419 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:23:17.428 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:23:17 + → module: 'TaskScheduler' +2025-10-24 05:23:17.429 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:23:27.457 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:23:27 + → module: 'TaskScheduler' +2025-10-24 05:23:27.457 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:23:37.486 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:23:37 + → module: 'TaskScheduler' +2025-10-24 05:23:37.486 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:23:47.495 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:23:47 + → module: 'TaskScheduler' +2025-10-24 05:23:47.495 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:23:57.524 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:23:57 + → module: 'TaskScheduler' +2025-10-24 05:23:57.524 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:24:07.533 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:24:07 + → module: 'TaskScheduler' +2025-10-24 05:24:07.533 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:24:17.541 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:24:17 + → module: 'TaskScheduler' +2025-10-24 05:24:17.541 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:24:27.561 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:24:27 + → module: 'TaskScheduler' +2025-10-24 05:24:27.561 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:24:37.580 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:24:37 + → module: 'TaskScheduler' +2025-10-24 05:24:37.580 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:24:47.590 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:24:47 + → module: 'TaskScheduler' +2025-10-24 05:24:47.590 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:24:57.602 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:24:57 + → module: 'TaskScheduler' +2025-10-24 05:24:57.602 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:25:07.610 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:25:07 + → module: 'TaskScheduler' +2025-10-24 05:25:07.610 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:25:07.625 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:25:07.647 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 05:25:07.648 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:25:07.648 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 05:25:07.648 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 05:25:07.648 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 05:25:07.652 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 05:25:07.654 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 05:25:07.656 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 05:25:07.657 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:25:07.657 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:25:07.657 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 05:25:08.087 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:25:08.121 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:25:08.143 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:25:08.404 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:25:08.406 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 05:25:08.406 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.75秒 + → module: 'NewsAPIClient' +2025-10-24 05:25:08.407 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 05:25:08.408 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 05:25:08.410 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 05:25:08.411 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 05:25:08.414 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:25:08.414 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:25:08.415 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.77秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 05:25:08.432 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 05:25:08.433 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:25:17.649 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:25:17 + → module: 'TaskScheduler' +2025-10-24 05:25:17.649 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:25:27.685 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:25:27 + → module: 'TaskScheduler' +2025-10-24 05:25:27.685 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:25:37.715 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:25:37 + → module: 'TaskScheduler' +2025-10-24 05:25:37.715 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:25:47.723 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:25:47 + → module: 'TaskScheduler' +2025-10-24 05:25:47.723 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:25:57.731 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:25:57 + → module: 'TaskScheduler' +2025-10-24 05:25:57.732 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:26:07.742 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:26:07 + → module: 'TaskScheduler' +2025-10-24 05:26:07.742 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:26:17.750 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:26:17 + → module: 'TaskScheduler' +2025-10-24 05:26:17.750 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:26:27.774 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:26:27 + → module: 'TaskScheduler' +2025-10-24 05:26:27.775 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:26:37.782 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:26:37 + → module: 'TaskScheduler' +2025-10-24 05:26:37.782 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:26:47.802 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:26:47 + → module: 'TaskScheduler' +2025-10-24 05:26:47.802 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:26:57.835 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:26:57 + → module: 'TaskScheduler' +2025-10-24 05:26:57.836 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:27:07.844 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:27:07 + → module: 'TaskScheduler' +2025-10-24 05:27:07.844 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:27:17.874 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:27:17 + → module: 'TaskScheduler' +2025-10-24 05:27:17.874 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:27:27.903 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:27:27 + → module: 'TaskScheduler' +2025-10-24 05:27:27.903 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:27:37.911 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:27:37 + → module: 'TaskScheduler' +2025-10-24 05:27:37.911 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:27:47.918 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:27:47 + → module: 'TaskScheduler' +2025-10-24 05:27:47.918 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:27:57.938 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:27:57 + → module: 'TaskScheduler' +2025-10-24 05:27:57.939 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:28:07.947 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:28:07 + → module: 'TaskScheduler' +2025-10-24 05:28:07.947 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:28:17.974 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:28:17 + → module: 'TaskScheduler' +2025-10-24 05:28:17.974 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:28:27.982 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:28:27 + → module: 'TaskScheduler' +2025-10-24 05:28:27.982 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:28:37.990 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:28:37 + → module: 'TaskScheduler' +2025-10-24 05:28:37.990 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:28:48.002 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:28:48 + → module: 'TaskScheduler' +2025-10-24 05:28:48.002 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:28:58.009 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:28:58 + → module: 'TaskScheduler' +2025-10-24 05:28:58.009 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:29:08.018 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:29:08 + → module: 'TaskScheduler' +2025-10-24 05:29:08.018 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:29:18.028 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:29:18 + → module: 'TaskScheduler' +2025-10-24 05:29:18.028 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:29:28.055 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:29:28 + → module: 'TaskScheduler' +2025-10-24 05:29:28.055 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:29:38.063 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:29:38 + → module: 'TaskScheduler' +2025-10-24 05:29:38.063 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:29:48.069 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:29:48 + → module: 'TaskScheduler' +2025-10-24 05:29:48.069 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:29:58.077 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:29:58 + → module: 'TaskScheduler' +2025-10-24 05:29:58.078 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:30:08.088 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:30:08 + → module: 'TaskScheduler' +2025-10-24 05:30:08.088 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:30:08.096 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:30:08.117 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 05:30:08.118 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:30:08.118 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 05:30:08.118 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 05:30:08.118 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 05:30:08.141 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 05:30:08.157 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 05:30:08.158 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 05:30:08.159 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:30:08.159 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:30:08.159 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 05:30:08.583 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:30:08.612 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:30:08.665 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:30:08.910 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:30:08.913 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 05:30:08.913 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.75秒 + → module: 'NewsAPIClient' +2025-10-24 05:30:08.914 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 05:30:08.916 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 05:30:08.918 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 05:30:08.921 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 05:30:08.924 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:30:08.924 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:30:08.925 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.81秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 05:30:08.938 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 05:30:08.938 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:30:18.120 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:30:18 + → module: 'TaskScheduler' +2025-10-24 05:30:18.120 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:30:28.128 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:30:28 + → module: 'TaskScheduler' +2025-10-24 05:30:28.128 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:30:38.152 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:30:38 + → module: 'TaskScheduler' +2025-10-24 05:30:38.152 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:30:48.160 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:30:48 + → module: 'TaskScheduler' +2025-10-24 05:30:48.160 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:30:58.192 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:30:58 + → module: 'TaskScheduler' +2025-10-24 05:30:58.192 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:31:08.200 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:31:08 + → module: 'TaskScheduler' +2025-10-24 05:31:08.200 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:31:18.233 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:31:18 + → module: 'TaskScheduler' +2025-10-24 05:31:18.233 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:31:28.243 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:31:28 + → module: 'TaskScheduler' +2025-10-24 05:31:28.243 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:31:38.250 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:31:38 + → module: 'TaskScheduler' +2025-10-24 05:31:38.250 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:31:48.267 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:31:48 + → module: 'TaskScheduler' +2025-10-24 05:31:48.267 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:31:58.300 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:31:58 + → module: 'TaskScheduler' +2025-10-24 05:31:58.300 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:32:08.319 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:32:08 + → module: 'TaskScheduler' +2025-10-24 05:32:08.319 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:32:18.327 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:32:18 + → module: 'TaskScheduler' +2025-10-24 05:32:18.328 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:32:28.335 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:32:28 + → module: 'TaskScheduler' +2025-10-24 05:32:28.335 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:32:38.342 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:32:38 + → module: 'TaskScheduler' +2025-10-24 05:32:38.342 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:32:48.350 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:32:48 + → module: 'TaskScheduler' +2025-10-24 05:32:48.350 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:32:58.380 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:32:58 + → module: 'TaskScheduler' +2025-10-24 05:32:58.380 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:33:08.388 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:33:08 + → module: 'TaskScheduler' +2025-10-24 05:33:08.388 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:33:18.397 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:33:18 + → module: 'TaskScheduler' +2025-10-24 05:33:18.397 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:33:28.405 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:33:28 + → module: 'TaskScheduler' +2025-10-24 05:33:28.405 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:33:38.414 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:33:38 + → module: 'TaskScheduler' +2025-10-24 05:33:38.414 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:33:48.422 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:33:48 + → module: 'TaskScheduler' +2025-10-24 05:33:48.422 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:33:58.449 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:33:58 + → module: 'TaskScheduler' +2025-10-24 05:33:58.449 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:34:08.459 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:34:08 + → module: 'TaskScheduler' +2025-10-24 05:34:08.460 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:34:18.469 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:34:18 + → module: 'TaskScheduler' +2025-10-24 05:34:18.469 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:34:28.480 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:34:28 + → module: 'TaskScheduler' +2025-10-24 05:34:28.480 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:34:38.488 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:34:38 + → module: 'TaskScheduler' +2025-10-24 05:34:38.488 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:34:48.517 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:34:48 + → module: 'TaskScheduler' +2025-10-24 05:34:48.517 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:34:58.529 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:34:58 + → module: 'TaskScheduler' +2025-10-24 05:34:58.529 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:35:08.536 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:35:08 + → module: 'TaskScheduler' +2025-10-24 05:35:08.536 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:35:08.560 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:35:08.598 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 05:35:08.598 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:35:08.598 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 05:35:08.599 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 05:35:08.599 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 05:35:08.618 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 05:35:08.622 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 05:35:08.623 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 05:35:08.623 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:35:08.623 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:35:08.624 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 05:35:09.113 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:35:09.133 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:35:09.145 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:35:09.572 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:35:09.574 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 05:35:09.575 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.95秒 + → module: 'NewsAPIClient' +2025-10-24 05:35:09.575 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 05:35:09.576 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 05:35:09.577 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 05:35:09.579 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 05:35:09.581 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:35:09.581 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:35:09.582 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.98秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 05:35:09.590 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 05:35:09.591 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:35:18.600 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:35:18 + → module: 'TaskScheduler' +2025-10-24 05:35:18.600 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:35:28.625 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:35:28 + → module: 'TaskScheduler' +2025-10-24 05:35:28.625 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:35:38.651 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:35:38 + → module: 'TaskScheduler' +2025-10-24 05:35:38.651 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:35:48.682 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:35:48 + → module: 'TaskScheduler' +2025-10-24 05:35:48.682 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:35:58.701 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:35:58 + → module: 'TaskScheduler' +2025-10-24 05:35:58.701 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:36:08.710 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:36:08 + → module: 'TaskScheduler' +2025-10-24 05:36:08.710 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:36:18.718 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:36:18 + → module: 'TaskScheduler' +2025-10-24 05:36:18.718 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:36:28.744 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:36:28 + → module: 'TaskScheduler' +2025-10-24 05:36:28.744 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:36:38.753 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:36:38 + → module: 'TaskScheduler' +2025-10-24 05:36:38.753 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:36:48.765 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:36:48 + → module: 'TaskScheduler' +2025-10-24 05:36:48.765 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:36:58.798 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:36:58 + → module: 'TaskScheduler' +2025-10-24 05:36:58.798 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:37:08.832 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:37:08 + → module: 'TaskScheduler' +2025-10-24 05:37:08.832 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:37:18.841 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:37:18 + → module: 'TaskScheduler' +2025-10-24 05:37:18.841 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:37:28.849 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:37:28 + → module: 'TaskScheduler' +2025-10-24 05:37:28.849 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:37:38.860 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:37:38 + → module: 'TaskScheduler' +2025-10-24 05:37:38.860 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:37:48.870 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:37:48 + → module: 'TaskScheduler' +2025-10-24 05:37:48.870 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:37:58.905 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:37:58 + → module: 'TaskScheduler' +2025-10-24 05:37:58.905 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:38:08.914 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:38:08 + → module: 'TaskScheduler' +2025-10-24 05:38:08.915 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:38:18.924 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:38:18 + → module: 'TaskScheduler' +2025-10-24 05:38:18.924 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:38:28.950 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:38:28 + → module: 'TaskScheduler' +2025-10-24 05:38:28.951 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:38:38.969 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:38:38 + → module: 'TaskScheduler' +2025-10-24 05:38:38.969 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:38:48.993 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:38:48 + → module: 'TaskScheduler' +2025-10-24 05:38:48.993 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:38:59.020 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:38:59 + → module: 'TaskScheduler' +2025-10-24 05:38:59.020 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:39:09.028 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:39:09 + → module: 'TaskScheduler' +2025-10-24 05:39:09.028 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:39:19.036 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:39:19 + → module: 'TaskScheduler' +2025-10-24 05:39:19.036 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:39:29.060 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:39:29 + → module: 'TaskScheduler' +2025-10-24 05:39:29.060 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:39:39.068 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:39:39 + → module: 'TaskScheduler' +2025-10-24 05:39:39.068 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:39:49.091 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:39:49 + → module: 'TaskScheduler' +2025-10-24 05:39:49.092 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:39:59.100 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:39:59 + → module: 'TaskScheduler' +2025-10-24 05:39:59.100 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:40:09.108 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:40:09 + → module: 'TaskScheduler' +2025-10-24 05:40:09.108 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:40:09.116 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:40:09.130 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 05:40:09.130 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:40:09.130 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 05:40:09.130 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 05:40:09.130 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 05:40:09.155 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 05:40:09.171 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 05:40:09.171 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 05:40:09.172 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:40:09.172 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:40:09.172 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 05:40:09.637 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:40:09.648 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:40:09.677 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:40:09.976 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:40:09.978 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 05:40:09.979 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.81秒 + → module: 'NewsAPIClient' +2025-10-24 05:40:09.979 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 05:40:09.980 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 05:40:09.981 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 05:40:09.982 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 05:40:09.984 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:40:09.984 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:40:09.984 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.85秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 05:40:10.006 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 05:40:10.006 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:40:19.132 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:40:19 + → module: 'TaskScheduler' +2025-10-24 05:40:19.133 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:40:29.154 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:40:29 + → module: 'TaskScheduler' +2025-10-24 05:40:29.154 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:40:39.162 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:40:39 + → module: 'TaskScheduler' +2025-10-24 05:40:39.162 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:40:49.212 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:40:49 + → module: 'TaskScheduler' +2025-10-24 05:40:49.212 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:40:59.221 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:40:59 + → module: 'TaskScheduler' +2025-10-24 05:40:59.221 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:41:09.229 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:41:09 + → module: 'TaskScheduler' +2025-10-24 05:41:09.229 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:41:19.242 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:41:19 + → module: 'TaskScheduler' +2025-10-24 05:41:19.242 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:41:29.255 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:41:29 + → module: 'TaskScheduler' +2025-10-24 05:41:29.255 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:41:39.261 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:41:39 + → module: 'TaskScheduler' +2025-10-24 05:41:39.262 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:41:49.274 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:41:49 + → module: 'TaskScheduler' +2025-10-24 05:41:49.275 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:41:59.287 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:41:59 + → module: 'TaskScheduler' +2025-10-24 05:41:59.287 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:42:09.296 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:42:09 + → module: 'TaskScheduler' +2025-10-24 05:42:09.296 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:42:19.304 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:42:19 + → module: 'TaskScheduler' +2025-10-24 05:42:19.304 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:42:29.315 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:42:29 + → module: 'TaskScheduler' +2025-10-24 05:42:29.316 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:42:39.324 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:42:39 + → module: 'TaskScheduler' +2025-10-24 05:42:39.324 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:42:49.331 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:42:49 + → module: 'TaskScheduler' +2025-10-24 05:42:49.331 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:42:59.361 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:42:59 + → module: 'TaskScheduler' +2025-10-24 05:42:59.361 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:43:09.369 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:43:09 + → module: 'TaskScheduler' +2025-10-24 05:43:09.369 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:43:19.401 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:43:19 + → module: 'TaskScheduler' +2025-10-24 05:43:19.401 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:43:29.423 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:43:29 + → module: 'TaskScheduler' +2025-10-24 05:43:29.423 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:43:39.431 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:43:39 + → module: 'TaskScheduler' +2025-10-24 05:43:39.432 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:43:49.439 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:43:49 + → module: 'TaskScheduler' +2025-10-24 05:43:49.439 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:43:59.469 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:43:59 + → module: 'TaskScheduler' +2025-10-24 05:43:59.469 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:44:09.477 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:44:09 + → module: 'TaskScheduler' +2025-10-24 05:44:09.477 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:44:19.486 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:44:19 + → module: 'TaskScheduler' +2025-10-24 05:44:19.486 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:44:29.493 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:44:29 + → module: 'TaskScheduler' +2025-10-24 05:44:29.493 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:44:39.500 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:44:39 + → module: 'TaskScheduler' +2025-10-24 05:44:39.501 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:44:49.523 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:44:49 + → module: 'TaskScheduler' +2025-10-24 05:44:49.523 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:44:59.530 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:44:59 + → module: 'TaskScheduler' +2025-10-24 05:44:59.531 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:45:09.538 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:45:09 + → module: 'TaskScheduler' +2025-10-24 05:45:09.538 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:45:09.546 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:45:09.565 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 05:45:09.566 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:45:09.566 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 05:45:09.566 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 05:45:09.567 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 05:45:09.571 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 05:45:09.575 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 05:45:09.576 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 05:45:09.576 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:45:09.577 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 16:24:17 + → module: 'NewsAPIClient' +2025-10-24 05:45:09.577 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 05:45:10.014 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:45:10.045 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:45:10.056 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:45:10.361 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:45:10.363 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 05:45:10.363 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.79秒 + → module: 'NewsAPIClient' +2025-10-24 05:45:10.364 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 05:45:10.366 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 05:45:10.366 | DEBUG | rss_subscriptions:235 - 处理条目 1: 晚播小麦如何保产量?霜降抢秋该怎么抢?专家分析 + → module: 'NewsAPIClient' +2025-10-24 05:45:10.369 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 05:45:10.371 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 05:45:10.372 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 05:45:10.392 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 05:45:10.393 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 05:45:10.393 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 05:45:10.394 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 05:45:10.395 | DEBUG | rss_subscriptions:235 - 处理条目 1: 晚播小麦如何保产量?霜降抢秋该怎么抢?专家分析 + → module: 'NewsAPIClient' +2025-10-24 05:45:10.398 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 05:45:10.400 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 05:45:10.401 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 05:45:10.407 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 0 + → error_message: "Duplicate entry '晚播小麦如何保产量?霜降抢秋该怎么抢?专家å' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '晚播小麦如何保产量?霜降抢秋该怎么抢?专家分析...', '文章链接': 'http://www.chinanews.com/cj/2025/10-24/10503551.shtml...', '文章摘要': '今天是二十四节气的霜降,也是秋季的最后一个节气。霜降是秋冬气候的转折点,气温将进一步下降,昼夜温差增大。农谚说,“霜降抢秋,不抢就丢”,农时变得异常紧迫。...'... +2025-10-24 05:45:10.408 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 0 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-24 05:45:10.408 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '晚播小麦如何保产量?霜降抢秋该怎么抢?专家å' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '晚播小麦如何保产量?霜降抢秋该怎么抢?专家å' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '晚播小麦如... +2025-10-24 05:45:10.409 | INFO | rss_subscriptions:259 - 成功写入 0/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 05:45:10.410 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 21:35:17 + → module: 'NewsAPIClient' +2025-10-24 05:45:10.410 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 21:35:17 + → module: 'NewsAPIClient' +2025-10-24 05:45:10.411 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.84秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 05:45:10.418 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 05:45:10.418 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:45:19.568 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:45:19 + → module: 'TaskScheduler' +2025-10-24 05:45:19.568 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:45:29.575 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:45:29 + → module: 'TaskScheduler' +2025-10-24 05:45:29.576 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:45:39.583 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:45:39 + → module: 'TaskScheduler' +2025-10-24 05:45:39.583 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:45:49.591 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:45:49 + → module: 'TaskScheduler' +2025-10-24 05:45:49.591 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:45:59.618 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:45:59 + → module: 'TaskScheduler' +2025-10-24 05:45:59.618 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:46:09.628 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:46:09 + → module: 'TaskScheduler' +2025-10-24 05:46:09.628 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:46:19.635 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:46:19 + → module: 'TaskScheduler' +2025-10-24 05:46:19.635 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:46:29.643 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:46:29 + → module: 'TaskScheduler' +2025-10-24 05:46:29.643 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:46:39.667 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:46:39 + → module: 'TaskScheduler' +2025-10-24 05:46:39.667 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:46:49.675 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:46:49 + → module: 'TaskScheduler' +2025-10-24 05:46:49.675 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:46:59.707 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:46:59 + → module: 'TaskScheduler' +2025-10-24 05:46:59.708 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:47:09.719 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:47:09 + → module: 'TaskScheduler' +2025-10-24 05:47:09.719 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:47:19.730 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:47:19 + → module: 'TaskScheduler' +2025-10-24 05:47:19.730 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:47:29.752 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:47:29 + → module: 'TaskScheduler' +2025-10-24 05:47:29.753 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:47:39.763 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:47:39 + → module: 'TaskScheduler' +2025-10-24 05:47:39.763 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:47:49.772 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:47:49 + → module: 'TaskScheduler' +2025-10-24 05:47:49.772 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:47:59.800 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:47:59 + → module: 'TaskScheduler' +2025-10-24 05:47:59.800 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:48:09.826 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:48:09 + → module: 'TaskScheduler' +2025-10-24 05:48:09.826 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:48:19.835 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:48:19 + → module: 'TaskScheduler' +2025-10-24 05:48:19.835 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:48:29.861 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:48:29 + → module: 'TaskScheduler' +2025-10-24 05:48:29.861 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:48:39.868 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:48:39 + → module: 'TaskScheduler' +2025-10-24 05:48:39.868 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:48:49.878 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:48:49 + → module: 'TaskScheduler' +2025-10-24 05:48:49.878 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:48:59.886 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:48:59 + → module: 'TaskScheduler' +2025-10-24 05:48:59.886 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:49:09.894 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:49:09 + → module: 'TaskScheduler' +2025-10-24 05:49:09.894 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:49:19.921 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:49:19 + → module: 'TaskScheduler' +2025-10-24 05:49:19.921 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:49:29.931 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:49:29 + → module: 'TaskScheduler' +2025-10-24 05:49:29.931 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:49:39.938 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:49:39 + → module: 'TaskScheduler' +2025-10-24 05:49:39.938 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:49:49.949 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:49:49 + → module: 'TaskScheduler' +2025-10-24 05:49:49.949 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:49:59.980 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:49:59 + → module: 'TaskScheduler' +2025-10-24 05:49:59.980 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:50:09.988 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:50:09 + → module: 'TaskScheduler' +2025-10-24 05:50:09.988 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:50:10.000 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:50:10.030 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 05:50:10.031 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:50:10.031 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 05:50:10.032 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 05:50:10.032 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 05:50:10.055 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 05:50:10.058 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 05:50:10.058 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 05:50:10.059 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 21:35:17 + → module: 'NewsAPIClient' +2025-10-24 05:50:10.059 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 21:35:17 + → module: 'NewsAPIClient' +2025-10-24 05:50:10.059 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 05:50:10.530 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:50:10.541 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:50:10.554 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:50:10.908 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:50:10.910 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 05:50:10.911 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.85秒 + → module: 'NewsAPIClient' +2025-10-24 05:50:10.911 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 05:50:10.912 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 05:50:10.912 | DEBUG | rss_subscriptions:235 - 处理条目 1: 普京:布达佩斯会晤更像是改期而非取消 + → module: 'NewsAPIClient' +2025-10-24 05:50:10.935 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 05:50:10.937 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 05:50:10.938 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 05:50:10.962 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 05:50:10.962 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 05:50:10.963 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 05:50:10.964 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 05:50:10.966 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 21:44:27 + → module: 'NewsAPIClient' +2025-10-24 05:50:10.966 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 21:44:27 + → module: 'NewsAPIClient' +2025-10-24 05:50:10.967 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.94秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 05:50:10.975 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 05:50:10.975 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:50:20.033 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:50:20 + → module: 'TaskScheduler' +2025-10-24 05:50:20.033 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:50:30.041 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:50:30 + → module: 'TaskScheduler' +2025-10-24 05:50:30.041 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:50:40.050 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:50:40 + → module: 'TaskScheduler' +2025-10-24 05:50:40.050 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:50:50.058 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:50:50 + → module: 'TaskScheduler' +2025-10-24 05:50:50.058 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:51:00.068 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:51:00 + → module: 'TaskScheduler' +2025-10-24 05:51:00.068 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:51:10.077 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:51:10 + → module: 'TaskScheduler' +2025-10-24 05:51:10.077 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:51:20.098 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:51:20 + → module: 'TaskScheduler' +2025-10-24 05:51:20.098 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:51:30.130 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:51:30 + → module: 'TaskScheduler' +2025-10-24 05:51:30.131 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:51:40.158 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:51:40 + → module: 'TaskScheduler' +2025-10-24 05:51:40.159 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:51:50.166 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:51:50 + → module: 'TaskScheduler' +2025-10-24 05:51:50.166 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:52:00.177 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:52:00 + → module: 'TaskScheduler' +2025-10-24 05:52:00.178 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:52:10.190 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:52:10 + → module: 'TaskScheduler' +2025-10-24 05:52:10.190 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:52:20.197 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:52:20 + → module: 'TaskScheduler' +2025-10-24 05:52:20.197 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:52:30.230 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:52:30 + → module: 'TaskScheduler' +2025-10-24 05:52:30.230 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:52:40.238 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:52:40 + → module: 'TaskScheduler' +2025-10-24 05:52:40.238 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:52:50.252 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:52:50 + → module: 'TaskScheduler' +2025-10-24 05:52:50.252 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:53:00.262 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:53:00 + → module: 'TaskScheduler' +2025-10-24 05:53:00.262 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:53:10.272 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:53:10 + → module: 'TaskScheduler' +2025-10-24 05:53:10.272 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:53:20.280 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:53:20 + → module: 'TaskScheduler' +2025-10-24 05:53:20.280 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:53:30.287 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:53:30 + → module: 'TaskScheduler' +2025-10-24 05:53:30.287 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:53:40.322 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:53:40 + → module: 'TaskScheduler' +2025-10-24 05:53:40.322 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:53:50.355 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:53:50 + → module: 'TaskScheduler' +2025-10-24 05:53:50.355 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:54:00.376 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:54:00 + → module: 'TaskScheduler' +2025-10-24 05:54:00.377 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:54:10.402 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:54:10 + → module: 'TaskScheduler' +2025-10-24 05:54:10.402 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:54:20.409 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:54:20 + → module: 'TaskScheduler' +2025-10-24 05:54:20.409 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:54:30.422 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:54:30 + → module: 'TaskScheduler' +2025-10-24 05:54:30.422 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:54:40.450 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:54:40 + → module: 'TaskScheduler' +2025-10-24 05:54:40.450 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:54:50.476 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:54:50 + → module: 'TaskScheduler' +2025-10-24 05:54:50.476 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:55:00.488 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:55:00 + → module: 'TaskScheduler' +2025-10-24 05:55:00.488 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:55:00.497 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:55:00.544 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 05:55:00.544 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:55:00.545 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 05:55:00.545 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 05:55:00.545 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 05:55:00.574 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 05:55:00.590 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 05:55:00.591 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 05:55:00.591 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 21:44:27 + → module: 'NewsAPIClient' +2025-10-24 05:55:00.592 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 21:44:27 + → module: 'NewsAPIClient' +2025-10-24 05:55:00.592 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 05:55:01.110 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:55:01.128 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:55:01.148 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:55:01.542 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 05:55:01.545 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 05:55:01.546 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.95秒 + → module: 'NewsAPIClient' +2025-10-24 05:55:01.546 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 05:55:01.547 | DEBUG | rss_subscriptions:235 - 处理条目 1: 欧盟领导人会议闭幕 聚焦乌克兰局势与欧洲防务升级 + → module: 'NewsAPIClient' +2025-10-24 05:55:01.551 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 05:55:01.553 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 05:55:01.555 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 05:55:01.562 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 05:55:01.563 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 05:55:01.563 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 05:55:01.565 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 05:55:01.566 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 05:55:01.566 | DEBUG | rss_subscriptions:235 - 处理条目 1: 欧盟领导人会议闭幕 聚焦乌克兰局势与欧洲防务升级 + → module: 'NewsAPIClient' +2025-10-24 05:55:01.567 | DEBUG | rss_subscriptions:235 - 处理条目 2: 突遇有人晕倒 “00后”男护士上演“生死时速”救人 + → module: 'NewsAPIClient' +2025-10-24 05:55:01.570 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 05:55:01.572 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 05:55:01.573 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 2 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 05:55:01.578 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 0 + → error_message: "Duplicate entry '欧盟领导人会议闭幕 聚焦乌克兰局势与欧洲防务' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '欧盟领导人会议闭幕 聚焦乌克兰局势与欧洲防务升级...', '文章链接': 'http://www.chinanews.com/gj/2025/10-24/10503555.shtml...', '文章摘要': '当地时间10月23日,欧盟领导人会议闭幕。欧盟各国领导人就乌克兰局势、中东和平、防务建设以及绿色数字转型等核心议题达成多项共识。...', '发布时间': '2... +2025-10-24 05:55:01.583 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 2 + → total_inserted: 1 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-24 05:55:01.583 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '欧盟领导人会议闭幕 聚焦乌克兰局势与欧洲防务' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '欧盟领导人会议闭幕 聚焦乌克兰局势与欧洲防务' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '欧盟领导人... +2025-10-24 05:55:01.585 | INFO | rss_subscriptions:259 - 成功写入 1/2 条记录 + → module: 'NewsAPIClient' +2025-10-24 05:55:01.586 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 21:46:37 + → module: 'NewsAPIClient' +2025-10-24 05:55:01.586 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 21:46:37 + → module: 'NewsAPIClient' +2025-10-24 05:55:01.587 | INFO | task_scheduler:289 - 任务执行完成,耗时: 1.04秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 05:55:01.596 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 05:55:01.596 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 05:55:10.546 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:55:10 + → module: 'TaskScheduler' +2025-10-24 05:55:10.546 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:55:20.558 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:55:20 + → module: 'TaskScheduler' +2025-10-24 05:55:20.558 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:55:30.591 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:55:30 + → module: 'TaskScheduler' +2025-10-24 05:55:30.591 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:55:40.612 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:55:40 + → module: 'TaskScheduler' +2025-10-24 05:55:40.612 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:55:50.644 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:55:50 + → module: 'TaskScheduler' +2025-10-24 05:55:50.645 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:56:00.654 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:56:00 + → module: 'TaskScheduler' +2025-10-24 05:56:00.654 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:56:10.687 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:56:10 + → module: 'TaskScheduler' +2025-10-24 05:56:10.687 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:56:20.697 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:56:20 + → module: 'TaskScheduler' +2025-10-24 05:56:20.697 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:56:30.707 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:56:30 + → module: 'TaskScheduler' +2025-10-24 05:56:30.707 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:56:40.716 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:56:40 + → module: 'TaskScheduler' +2025-10-24 05:56:40.716 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:56:50.738 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:56:50 + → module: 'TaskScheduler' +2025-10-24 05:56:50.739 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:57:00.751 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:57:00 + → module: 'TaskScheduler' +2025-10-24 05:57:00.751 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:57:10.782 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:57:10 + → module: 'TaskScheduler' +2025-10-24 05:57:10.782 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:57:20.791 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:57:20 + → module: 'TaskScheduler' +2025-10-24 05:57:20.791 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:57:30.811 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:57:30 + → module: 'TaskScheduler' +2025-10-24 05:57:30.811 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:57:40.818 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:57:40 + → module: 'TaskScheduler' +2025-10-24 05:57:40.819 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:57:50.827 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:57:50 + → module: 'TaskScheduler' +2025-10-24 05:57:50.827 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:58:00.836 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:58:00 + → module: 'TaskScheduler' +2025-10-24 05:58:00.836 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:58:10.848 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:58:10 + → module: 'TaskScheduler' +2025-10-24 05:58:10.849 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:58:20.858 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:58:20 + → module: 'TaskScheduler' +2025-10-24 05:58:20.858 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:58:30.887 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:58:30 + → module: 'TaskScheduler' +2025-10-24 05:58:30.887 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:58:40.896 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:58:40 + → module: 'TaskScheduler' +2025-10-24 05:58:40.896 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:58:50.919 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:58:50 + → module: 'TaskScheduler' +2025-10-24 05:58:50.919 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:59:00.929 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:59:00 + → module: 'TaskScheduler' +2025-10-24 05:59:00.929 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:59:10.936 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:59:10 + → module: 'TaskScheduler' +2025-10-24 05:59:10.936 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:59:20.945 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:59:20 + → module: 'TaskScheduler' +2025-10-24 05:59:20.945 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:59:30.952 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:59:30 + → module: 'TaskScheduler' +2025-10-24 05:59:30.952 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:59:40.959 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:59:40 + → module: 'TaskScheduler' +2025-10-24 05:59:40.959 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 05:59:50.970 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 05:59:50 + → module: 'TaskScheduler' +2025-10-24 05:59:50.970 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:00:00.999 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:00:00 + → module: 'TaskScheduler' +2025-10-24 06:00:00.999 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:00:01.007 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:00:01.039 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 06:00:01.039 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:00:01.040 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 06:00:01.040 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 06:00:01.040 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 06:00:01.043 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 06:00:01.047 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 06:00:01.047 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 06:00:01.047 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 21:46:37 + → module: 'NewsAPIClient' +2025-10-24 06:00:01.048 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 21:46:37 + → module: 'NewsAPIClient' +2025-10-24 06:00:01.048 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 06:00:01.539 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:00:01.552 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:00:01.603 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:00:01.865 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:00:01.868 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 06:00:01.868 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.82秒 + → module: 'NewsAPIClient' +2025-10-24 06:00:01.869 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 06:00:01.871 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 06:00:01.873 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 06:00:01.874 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 06:00:01.877 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 21:46:37 + → module: 'NewsAPIClient' +2025-10-24 06:00:01.877 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 21:46:37 + → module: 'NewsAPIClient' +2025-10-24 06:00:01.878 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.84秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 06:00:01.887 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 06:00:01.887 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:00:11.041 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:00:11 + → module: 'TaskScheduler' +2025-10-24 06:00:11.041 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:00:21.064 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:00:21 + → module: 'TaskScheduler' +2025-10-24 06:00:21.064 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:00:31.071 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:00:31 + → module: 'TaskScheduler' +2025-10-24 06:00:31.071 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:00:41.100 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:00:41 + → module: 'TaskScheduler' +2025-10-24 06:00:41.100 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:00:51.108 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:00:51 + → module: 'TaskScheduler' +2025-10-24 06:00:51.108 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:01:01.117 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:01:01 + → module: 'TaskScheduler' +2025-10-24 06:01:01.117 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:01:11.127 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:01:11 + → module: 'TaskScheduler' +2025-10-24 06:01:11.127 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:01:21.135 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:01:21 + → module: 'TaskScheduler' +2025-10-24 06:01:21.135 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:01:31.160 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:01:31 + → module: 'TaskScheduler' +2025-10-24 06:01:31.160 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:01:41.167 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:01:41 + → module: 'TaskScheduler' +2025-10-24 06:01:41.167 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:01:51.174 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:01:51 + → module: 'TaskScheduler' +2025-10-24 06:01:51.174 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:02:01.183 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:02:01 + → module: 'TaskScheduler' +2025-10-24 06:02:01.184 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:02:11.195 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:02:11 + → module: 'TaskScheduler' +2025-10-24 06:02:11.195 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:02:21.204 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:02:21 + → module: 'TaskScheduler' +2025-10-24 06:02:21.204 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:02:31.233 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:02:31 + → module: 'TaskScheduler' +2025-10-24 06:02:31.233 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:02:41.243 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:02:41 + → module: 'TaskScheduler' +2025-10-24 06:02:41.244 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:02:51.253 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:02:51 + → module: 'TaskScheduler' +2025-10-24 06:02:51.254 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:03:01.263 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:03:01 + → module: 'TaskScheduler' +2025-10-24 06:03:01.263 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:03:11.276 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:03:11 + → module: 'TaskScheduler' +2025-10-24 06:03:11.276 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:03:21.285 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:03:21 + → module: 'TaskScheduler' +2025-10-24 06:03:21.285 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:03:31.298 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:03:31 + → module: 'TaskScheduler' +2025-10-24 06:03:31.298 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:03:41.310 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:03:41 + → module: 'TaskScheduler' +2025-10-24 06:03:41.310 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:03:51.319 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:03:51 + → module: 'TaskScheduler' +2025-10-24 06:03:51.319 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:04:01.328 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:04:01 + → module: 'TaskScheduler' +2025-10-24 06:04:01.329 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:04:11.340 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:04:11 + → module: 'TaskScheduler' +2025-10-24 06:04:11.340 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:04:21.348 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:04:21 + → module: 'TaskScheduler' +2025-10-24 06:04:21.348 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:04:31.357 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:04:31 + → module: 'TaskScheduler' +2025-10-24 06:04:31.358 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:04:41.368 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:04:41 + → module: 'TaskScheduler' +2025-10-24 06:04:41.368 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:04:51.401 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:04:51 + → module: 'TaskScheduler' +2025-10-24 06:04:51.401 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:05:01.414 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:05:01 + → module: 'TaskScheduler' +2025-10-24 06:05:01.414 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:05:01.425 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:05:01.457 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 06:05:01.457 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:05:01.458 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 06:05:01.458 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 06:05:01.458 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 06:05:01.463 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 06:05:01.467 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 06:05:01.467 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 06:05:01.468 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 21:46:37 + → module: 'NewsAPIClient' +2025-10-24 06:05:01.469 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 21:46:37 + → module: 'NewsAPIClient' +2025-10-24 06:05:01.469 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 06:05:01.947 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:05:01.963 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:05:01.983 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:05:02.399 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:05:02.401 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 06:05:02.402 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.93秒 + → module: 'NewsAPIClient' +2025-10-24 06:05:02.402 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 06:05:02.403 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 06:05:02.405 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 06:05:02.405 | DEBUG | rss_subscriptions:235 - 处理条目 1: 美国务卿与以总理会面 强调重视巩固加沙停火协议 + → module: 'NewsAPIClient' +2025-10-24 06:05:02.409 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 06:05:02.410 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 06:05:02.413 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 06:05:02.421 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 06:05:02.423 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 06:05:02.424 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 06:05:02.424 | DEBUG | rss_subscriptions:235 - 处理条目 1: 美国务卿与以总理会面 强调重视巩固加沙停火协议 + → module: 'NewsAPIClient' +2025-10-24 06:05:02.430 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 06:05:02.433 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 06:05:02.435 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 06:05:02.442 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 0 + → error_message: "Duplicate entry '美国务卿与以总理会面 强调重视巩固加沙停火协' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '美国务卿与以总理会面 强调重视巩固加沙停火协议...', '文章链接': 'http://www.chinanews.com/gj/2025/10-24/10503556.shtml...', '文章摘要': '当地时间23日,正在以色列访问的美国国务卿鲁比奥与以总理内塔尼亚胡会面,并举行简短的联合记者会。...', '发布时间': '2025-10-23 22:00:5... +2025-10-24 06:05:02.442 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 0 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-24 06:05:02.443 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '美国务卿与以总理会面 强调重视巩固加沙停火协' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '美国务卿与以总理会面 强调重视巩固加沙停火协' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '美国务卿与... +2025-10-24 06:05:02.445 | INFO | rss_subscriptions:259 - 成功写入 0/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 06:05:02.446 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 22:00:57 + → module: 'NewsAPIClient' +2025-10-24 06:05:02.446 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 22:00:57 + → module: 'NewsAPIClient' +2025-10-24 06:05:02.446 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.99秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 06:05:02.456 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 06:05:02.456 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:05:11.459 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:05:11 + → module: 'TaskScheduler' +2025-10-24 06:05:11.459 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:05:21.468 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:05:21 + → module: 'TaskScheduler' +2025-10-24 06:05:21.468 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:05:31.480 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:05:31 + → module: 'TaskScheduler' +2025-10-24 06:05:31.480 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:05:41.511 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:05:41 + → module: 'TaskScheduler' +2025-10-24 06:05:41.511 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:05:51.529 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:05:51 + → module: 'TaskScheduler' +2025-10-24 06:05:51.529 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:06:01.541 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:06:01 + → module: 'TaskScheduler' +2025-10-24 06:06:01.541 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:06:11.564 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:06:11 + → module: 'TaskScheduler' +2025-10-24 06:06:11.565 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:06:21.574 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:06:21 + → module: 'TaskScheduler' +2025-10-24 06:06:21.574 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:06:31.583 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:06:31 + → module: 'TaskScheduler' +2025-10-24 06:06:31.583 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:06:41.609 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:06:41 + → module: 'TaskScheduler' +2025-10-24 06:06:41.610 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:06:51.621 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:06:51 + → module: 'TaskScheduler' +2025-10-24 06:06:51.621 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:07:01.647 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:07:01 + → module: 'TaskScheduler' +2025-10-24 06:07:01.647 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:07:11.654 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:07:11 + → module: 'TaskScheduler' +2025-10-24 06:07:11.654 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:07:21.674 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:07:21 + → module: 'TaskScheduler' +2025-10-24 06:07:21.674 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:07:31.682 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:07:31 + → module: 'TaskScheduler' +2025-10-24 06:07:31.682 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:07:41.711 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:07:41 + → module: 'TaskScheduler' +2025-10-24 06:07:41.711 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:07:51.733 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:07:51 + → module: 'TaskScheduler' +2025-10-24 06:07:51.733 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:08:01.741 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:08:01 + → module: 'TaskScheduler' +2025-10-24 06:08:01.741 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:08:11.749 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:08:11 + → module: 'TaskScheduler' +2025-10-24 06:08:11.749 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:08:21.758 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:08:21 + → module: 'TaskScheduler' +2025-10-24 06:08:21.758 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:08:31.765 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:08:31 + → module: 'TaskScheduler' +2025-10-24 06:08:31.765 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:08:41.788 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:08:41 + → module: 'TaskScheduler' +2025-10-24 06:08:41.788 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:08:51.810 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:08:51 + → module: 'TaskScheduler' +2025-10-24 06:08:51.810 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:08:51.823 | INFO | main:87 - 小时任务统计 + → module: 'Main' + → 总任务数: 12 + → 成功: 12 + → 失败: 0 +2025-10-24 06:09:01.824 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:09:01 + → module: 'TaskScheduler' +2025-10-24 06:09:01.824 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:09:11.832 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:09:11 + → module: 'TaskScheduler' +2025-10-24 06:09:11.832 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:09:21.855 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:09:21 + → module: 'TaskScheduler' +2025-10-24 06:09:21.855 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:09:31.882 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:09:31 + → module: 'TaskScheduler' +2025-10-24 06:09:31.883 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:09:41.891 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:09:41 + → module: 'TaskScheduler' +2025-10-24 06:09:41.891 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:09:51.900 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:09:51 + → module: 'TaskScheduler' +2025-10-24 06:09:51.900 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:10:01.908 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:10:01 + → module: 'TaskScheduler' +2025-10-24 06:10:01.908 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:10:01.917 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:10:01.938 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 06:10:01.939 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:10:01.939 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 06:10:01.940 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 06:10:01.940 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 06:10:01.962 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 06:10:01.966 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 06:10:01.966 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 06:10:01.967 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 22:00:57 + → module: 'NewsAPIClient' +2025-10-24 06:10:01.967 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 22:00:57 + → module: 'NewsAPIClient' +2025-10-24 06:10:01.967 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 06:10:02.396 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:10:02.470 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:10:02.503 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:10:02.753 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:10:02.754 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 06:10:02.755 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.79秒 + → module: 'NewsAPIClient' +2025-10-24 06:10:02.755 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 06:10:02.756 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 06:10:02.757 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 06:10:02.758 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 06:10:02.760 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 22:00:57 + → module: 'NewsAPIClient' +2025-10-24 06:10:02.760 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 22:00:57 + → module: 'NewsAPIClient' +2025-10-24 06:10:02.760 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.82秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 06:10:02.806 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 06:10:02.807 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:10:11.941 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:10:11 + → module: 'TaskScheduler' +2025-10-24 06:10:11.941 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:10:21.973 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:10:21 + → module: 'TaskScheduler' +2025-10-24 06:10:21.973 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:10:31.981 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:10:31 + → module: 'TaskScheduler' +2025-10-24 06:10:31.981 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:10:41.992 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:10:41 + → module: 'TaskScheduler' +2025-10-24 06:10:41.992 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:10:52.016 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:10:52 + → module: 'TaskScheduler' +2025-10-24 06:10:52.016 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:11:02.045 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:11:02 + → module: 'TaskScheduler' +2025-10-24 06:11:02.045 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:11:12.075 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:11:12 + → module: 'TaskScheduler' +2025-10-24 06:11:12.075 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:11:22.101 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:11:22 + → module: 'TaskScheduler' +2025-10-24 06:11:22.101 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:11:32.108 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:11:32 + → module: 'TaskScheduler' +2025-10-24 06:11:32.108 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:11:42.134 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:11:42 + → module: 'TaskScheduler' +2025-10-24 06:11:42.135 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:11:52.146 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:11:52 + → module: 'TaskScheduler' +2025-10-24 06:11:52.147 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:12:02.159 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:12:02 + → module: 'TaskScheduler' +2025-10-24 06:12:02.160 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:12:12.170 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:12:12 + → module: 'TaskScheduler' +2025-10-24 06:12:12.170 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:12:22.177 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:12:22 + → module: 'TaskScheduler' +2025-10-24 06:12:22.177 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:12:32.203 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:12:32 + → module: 'TaskScheduler' +2025-10-24 06:12:32.203 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:12:42.211 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:12:42 + → module: 'TaskScheduler' +2025-10-24 06:12:42.211 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:12:52.220 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:12:52 + → module: 'TaskScheduler' +2025-10-24 06:12:52.220 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:13:02.229 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:13:02 + → module: 'TaskScheduler' +2025-10-24 06:13:02.229 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:13:12.236 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:13:12 + → module: 'TaskScheduler' +2025-10-24 06:13:12.236 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:13:22.243 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:13:22 + → module: 'TaskScheduler' +2025-10-24 06:13:22.243 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:13:32.250 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:13:32 + → module: 'TaskScheduler' +2025-10-24 06:13:32.250 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:13:42.272 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:13:42 + → module: 'TaskScheduler' +2025-10-24 06:13:42.272 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:13:52.281 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:13:52 + → module: 'TaskScheduler' +2025-10-24 06:13:52.281 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:14:02.292 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:14:02 + → module: 'TaskScheduler' +2025-10-24 06:14:02.292 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:14:12.300 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:14:12 + → module: 'TaskScheduler' +2025-10-24 06:14:12.301 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:14:22.332 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:14:22 + → module: 'TaskScheduler' +2025-10-24 06:14:22.333 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:14:32.361 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:14:32 + → module: 'TaskScheduler' +2025-10-24 06:14:32.361 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:14:42.368 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:14:42 + → module: 'TaskScheduler' +2025-10-24 06:14:42.369 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:14:52.378 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:14:52 + → module: 'TaskScheduler' +2025-10-24 06:14:52.378 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:15:02.400 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:15:02 + → module: 'TaskScheduler' +2025-10-24 06:15:02.400 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:15:02.409 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:15:02.443 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 06:15:02.443 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:15:02.444 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 06:15:02.444 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 06:15:02.444 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 06:15:02.458 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 06:15:02.463 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 06:15:02.463 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 06:15:02.464 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 22:00:57 + → module: 'NewsAPIClient' +2025-10-24 06:15:02.464 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 22:00:57 + → module: 'NewsAPIClient' +2025-10-24 06:15:02.464 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 06:15:02.903 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:15:02.917 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:15:02.927 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:15:03.240 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:15:03.242 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 06:15:03.242 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.78秒 + → module: 'NewsAPIClient' +2025-10-24 06:15:03.242 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 06:15:03.243 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 06:15:03.245 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 06:15:03.246 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 06:15:03.248 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 22:00:57 + → module: 'NewsAPIClient' +2025-10-24 06:15:03.248 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 22:00:57 + → module: 'NewsAPIClient' +2025-10-24 06:15:03.248 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.81秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 06:15:03.256 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 06:15:03.257 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:15:12.446 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:15:12 + → module: 'TaskScheduler' +2025-10-24 06:15:12.446 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:15:22.476 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:15:22 + → module: 'TaskScheduler' +2025-10-24 06:15:22.477 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:15:32.487 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:15:32 + → module: 'TaskScheduler' +2025-10-24 06:15:32.487 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:15:42.494 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:15:42 + → module: 'TaskScheduler' +2025-10-24 06:15:42.494 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:15:52.502 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:15:52 + → module: 'TaskScheduler' +2025-10-24 06:15:52.502 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:16:02.535 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:16:02 + → module: 'TaskScheduler' +2025-10-24 06:16:02.535 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:16:12.544 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:16:12 + → module: 'TaskScheduler' +2025-10-24 06:16:12.544 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:16:22.556 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:16:22 + → module: 'TaskScheduler' +2025-10-24 06:16:22.557 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:16:32.569 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:16:32 + → module: 'TaskScheduler' +2025-10-24 06:16:32.569 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:16:42.577 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:16:42 + → module: 'TaskScheduler' +2025-10-24 06:16:42.577 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:16:52.609 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:16:52 + → module: 'TaskScheduler' +2025-10-24 06:16:52.609 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:17:02.619 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:17:02 + → module: 'TaskScheduler' +2025-10-24 06:17:02.619 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:17:12.646 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:17:12 + → module: 'TaskScheduler' +2025-10-24 06:17:12.646 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:17:22.657 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:17:22 + → module: 'TaskScheduler' +2025-10-24 06:17:22.657 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:17:32.664 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:17:32 + → module: 'TaskScheduler' +2025-10-24 06:17:32.664 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:17:42.696 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:17:42 + → module: 'TaskScheduler' +2025-10-24 06:17:42.696 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:17:52.707 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:17:52 + → module: 'TaskScheduler' +2025-10-24 06:17:52.707 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:18:02.718 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:18:02 + → module: 'TaskScheduler' +2025-10-24 06:18:02.718 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:18:12.727 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:18:12 + → module: 'TaskScheduler' +2025-10-24 06:18:12.728 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:18:22.749 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:18:22 + → module: 'TaskScheduler' +2025-10-24 06:18:22.749 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:18:32.757 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:18:32 + → module: 'TaskScheduler' +2025-10-24 06:18:32.757 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:18:42.769 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:18:42 + → module: 'TaskScheduler' +2025-10-24 06:18:42.769 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:18:52.777 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:18:52 + → module: 'TaskScheduler' +2025-10-24 06:18:52.777 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:19:02.802 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:19:02 + → module: 'TaskScheduler' +2025-10-24 06:19:02.802 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:19:12.834 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:19:12 + → module: 'TaskScheduler' +2025-10-24 06:19:12.834 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:19:22.843 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:19:22 + → module: 'TaskScheduler' +2025-10-24 06:19:22.843 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:19:32.851 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:19:32 + → module: 'TaskScheduler' +2025-10-24 06:19:32.851 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:19:42.860 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:19:42 + → module: 'TaskScheduler' +2025-10-24 06:19:42.860 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:19:52.893 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:19:52 + → module: 'TaskScheduler' +2025-10-24 06:19:52.893 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:20:02.918 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:20:02 + → module: 'TaskScheduler' +2025-10-24 06:20:02.918 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:20:02.927 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:20:02.967 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 06:20:02.967 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:20:02.968 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 06:20:02.968 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 06:20:02.968 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 06:20:02.996 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 06:20:03.011 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 06:20:03.013 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 06:20:03.013 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 22:00:57 + → module: 'NewsAPIClient' +2025-10-24 06:20:03.013 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 22:00:57 + → module: 'NewsAPIClient' +2025-10-24 06:20:03.014 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 06:20:03.520 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:20:03.534 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:20:03.546 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:20:03.982 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:20:03.984 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 06:20:03.984 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.97秒 + → module: 'NewsAPIClient' +2025-10-24 06:20:03.986 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 06:20:03.986 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 06:20:03.988 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 06:20:03.989 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 06:20:03.991 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 22:00:57 + → module: 'NewsAPIClient' +2025-10-24 06:20:03.991 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 22:00:57 + → module: 'NewsAPIClient' +2025-10-24 06:20:03.992 | INFO | task_scheduler:289 - 任务执行完成,耗时: 1.02秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 06:20:04.000 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 06:20:04.000 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:20:12.969 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:20:12 + → module: 'TaskScheduler' +2025-10-24 06:20:12.969 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:20:22.978 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:20:22 + → module: 'TaskScheduler' +2025-10-24 06:20:22.978 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:20:32.991 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:20:32 + → module: 'TaskScheduler' +2025-10-24 06:20:32.991 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:20:43.003 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:20:43 + → module: 'TaskScheduler' +2025-10-24 06:20:43.003 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:20:53.024 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:20:53 + → module: 'TaskScheduler' +2025-10-24 06:20:53.024 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:21:03.033 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:21:03 + → module: 'TaskScheduler' +2025-10-24 06:21:03.033 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:21:13.053 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:21:13 + → module: 'TaskScheduler' +2025-10-24 06:21:13.054 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:21:23.086 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:21:23 + → module: 'TaskScheduler' +2025-10-24 06:21:23.086 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:21:33.093 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:21:33 + → module: 'TaskScheduler' +2025-10-24 06:21:33.093 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:21:43.116 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:21:43 + → module: 'TaskScheduler' +2025-10-24 06:21:43.116 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:21:53.124 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:21:53 + → module: 'TaskScheduler' +2025-10-24 06:21:53.124 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:22:03.132 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:22:03 + → module: 'TaskScheduler' +2025-10-24 06:22:03.132 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:22:13.143 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:22:13 + → module: 'TaskScheduler' +2025-10-24 06:22:13.144 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:22:23.165 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:22:23 + → module: 'TaskScheduler' +2025-10-24 06:22:23.165 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:22:33.172 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:22:33 + → module: 'TaskScheduler' +2025-10-24 06:22:33.172 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:22:43.180 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:22:43 + → module: 'TaskScheduler' +2025-10-24 06:22:43.180 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:22:53.212 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:22:53 + → module: 'TaskScheduler' +2025-10-24 06:22:53.212 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:23:03.221 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:23:03 + → module: 'TaskScheduler' +2025-10-24 06:23:03.221 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:23:13.229 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:23:13 + → module: 'TaskScheduler' +2025-10-24 06:23:13.229 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:23:23.236 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:23:23 + → module: 'TaskScheduler' +2025-10-24 06:23:23.236 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:23:33.247 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:23:33 + → module: 'TaskScheduler' +2025-10-24 06:23:33.247 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:23:43.255 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:23:43 + → module: 'TaskScheduler' +2025-10-24 06:23:43.255 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:23:53.262 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:23:53 + → module: 'TaskScheduler' +2025-10-24 06:23:53.262 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:24:03.273 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:24:03 + → module: 'TaskScheduler' +2025-10-24 06:24:03.273 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:24:13.298 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:24:13 + → module: 'TaskScheduler' +2025-10-24 06:24:13.298 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:24:23.308 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:24:23 + → module: 'TaskScheduler' +2025-10-24 06:24:23.308 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:24:33.331 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:24:33 + → module: 'TaskScheduler' +2025-10-24 06:24:33.331 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:24:43.342 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:24:43 + → module: 'TaskScheduler' +2025-10-24 06:24:43.342 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:24:53.349 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:24:53 + → module: 'TaskScheduler' +2025-10-24 06:24:53.349 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:25:03.377 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:25:03 + → module: 'TaskScheduler' +2025-10-24 06:25:03.377 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:25:03.386 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:25:03.399 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 06:25:03.399 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:25:03.399 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 06:25:03.401 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 06:25:03.401 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 06:25:03.405 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 06:25:03.425 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 06:25:03.426 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 06:25:03.426 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 22:00:57 + → module: 'NewsAPIClient' +2025-10-24 06:25:03.427 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 22:00:57 + → module: 'NewsAPIClient' +2025-10-24 06:25:03.427 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 06:25:03.885 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:25:03.902 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:25:03.933 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:25:04.278 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:25:04.281 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 06:25:04.282 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.85秒 + → module: 'NewsAPIClient' +2025-10-24 06:25:04.282 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 06:25:04.284 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 06:25:04.287 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 06:25:04.289 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 06:25:04.292 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 22:00:57 + → module: 'NewsAPIClient' +2025-10-24 06:25:04.292 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 22:00:57 + → module: 'NewsAPIClient' +2025-10-24 06:25:04.293 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.89秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 06:25:04.303 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 06:25:04.303 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:25:13.402 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:25:13 + → module: 'TaskScheduler' +2025-10-24 06:25:13.402 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:25:23.431 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:25:23 + → module: 'TaskScheduler' +2025-10-24 06:25:23.431 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:25:33.449 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:25:33 + → module: 'TaskScheduler' +2025-10-24 06:25:33.449 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:25:43.457 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:25:43 + → module: 'TaskScheduler' +2025-10-24 06:25:43.457 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:25:53.466 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:25:53 + → module: 'TaskScheduler' +2025-10-24 06:25:53.466 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:26:03.475 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:26:03 + → module: 'TaskScheduler' +2025-10-24 06:26:03.475 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:26:13.501 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:26:13 + → module: 'TaskScheduler' +2025-10-24 06:26:13.501 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:26:23.512 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:26:23 + → module: 'TaskScheduler' +2025-10-24 06:26:23.512 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:26:33.522 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:26:33 + → module: 'TaskScheduler' +2025-10-24 06:26:33.522 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:26:43.532 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:26:43 + → module: 'TaskScheduler' +2025-10-24 06:26:43.533 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:26:53.545 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:26:53 + → module: 'TaskScheduler' +2025-10-24 06:26:53.545 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:27:03.553 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:27:03 + → module: 'TaskScheduler' +2025-10-24 06:27:03.553 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:27:13.561 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:27:13 + → module: 'TaskScheduler' +2025-10-24 06:27:13.561 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:27:23.570 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:27:23 + → module: 'TaskScheduler' +2025-10-24 06:27:23.570 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:27:33.577 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:27:33 + → module: 'TaskScheduler' +2025-10-24 06:27:33.578 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:27:43.610 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:27:43 + → module: 'TaskScheduler' +2025-10-24 06:27:43.610 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:27:53.618 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:27:53 + → module: 'TaskScheduler' +2025-10-24 06:27:53.618 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:28:03.628 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:28:03 + → module: 'TaskScheduler' +2025-10-24 06:28:03.628 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:28:13.639 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:28:13 + → module: 'TaskScheduler' +2025-10-24 06:28:13.639 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:28:23.664 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:28:23 + → module: 'TaskScheduler' +2025-10-24 06:28:23.664 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:28:33.673 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:28:33 + → module: 'TaskScheduler' +2025-10-24 06:28:33.673 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:28:43.681 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:28:43 + → module: 'TaskScheduler' +2025-10-24 06:28:43.682 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:28:53.693 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:28:53 + → module: 'TaskScheduler' +2025-10-24 06:28:53.693 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:29:03.703 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:29:03 + → module: 'TaskScheduler' +2025-10-24 06:29:03.703 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:29:13.710 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:29:13 + → module: 'TaskScheduler' +2025-10-24 06:29:13.710 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:29:23.720 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:29:23 + → module: 'TaskScheduler' +2025-10-24 06:29:23.720 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:29:33.753 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:29:33 + → module: 'TaskScheduler' +2025-10-24 06:29:33.753 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:29:43.761 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:29:43 + → module: 'TaskScheduler' +2025-10-24 06:29:43.761 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:29:53.770 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:29:53 + → module: 'TaskScheduler' +2025-10-24 06:29:53.770 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:30:03.780 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:30:03 + → module: 'TaskScheduler' +2025-10-24 06:30:03.781 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:30:03.790 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:30:03.811 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 06:30:03.812 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:30:03.813 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 06:30:03.813 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 06:30:03.813 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 06:30:03.829 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 06:30:03.834 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 06:30:03.835 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 06:30:03.836 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 22:00:57 + → module: 'NewsAPIClient' +2025-10-24 06:30:03.836 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 22:00:57 + → module: 'NewsAPIClient' +2025-10-24 06:30:03.837 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 06:30:04.294 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:30:04.305 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:30:04.328 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:30:04.639 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:30:04.640 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 06:30:04.641 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.80秒 + → module: 'NewsAPIClient' +2025-10-24 06:30:04.641 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 06:30:04.642 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 06:30:04.643 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 06:30:04.644 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 06:30:04.646 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 22:00:57 + → module: 'NewsAPIClient' +2025-10-24 06:30:04.646 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 22:00:57 + → module: 'NewsAPIClient' +2025-10-24 06:30:04.646 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.83秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 06:30:04.672 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 06:30:04.673 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:30:13.814 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:30:13 + → module: 'TaskScheduler' +2025-10-24 06:30:13.814 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:30:23.822 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:30:23 + → module: 'TaskScheduler' +2025-10-24 06:30:23.822 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:30:33.830 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:30:33 + → module: 'TaskScheduler' +2025-10-24 06:30:33.831 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:30:43.851 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:30:43 + → module: 'TaskScheduler' +2025-10-24 06:30:43.852 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:30:53.861 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:30:53 + → module: 'TaskScheduler' +2025-10-24 06:30:53.861 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:31:03.887 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:31:03 + → module: 'TaskScheduler' +2025-10-24 06:31:03.887 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:31:13.899 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:31:13 + → module: 'TaskScheduler' +2025-10-24 06:31:13.899 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:31:23.907 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:31:23 + → module: 'TaskScheduler' +2025-10-24 06:31:23.907 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:31:33.915 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:31:33 + → module: 'TaskScheduler' +2025-10-24 06:31:33.916 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:31:43.941 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:31:43 + → module: 'TaskScheduler' +2025-10-24 06:31:43.941 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:31:53.971 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:31:53 + → module: 'TaskScheduler' +2025-10-24 06:31:53.971 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:32:03.996 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:32:03 + → module: 'TaskScheduler' +2025-10-24 06:32:03.996 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:32:14.005 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:32:14 + → module: 'TaskScheduler' +2025-10-24 06:32:14.006 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:32:24.038 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:32:24 + → module: 'TaskScheduler' +2025-10-24 06:32:24.038 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:32:34.061 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:32:34 + → module: 'TaskScheduler' +2025-10-24 06:32:34.062 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:32:44.071 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:32:44 + → module: 'TaskScheduler' +2025-10-24 06:32:44.071 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:32:54.079 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:32:54 + → module: 'TaskScheduler' +2025-10-24 06:32:54.080 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:33:04.100 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:33:04 + → module: 'TaskScheduler' +2025-10-24 06:33:04.101 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:33:14.125 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:33:14 + → module: 'TaskScheduler' +2025-10-24 06:33:14.125 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:33:24.133 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:33:24 + → module: 'TaskScheduler' +2025-10-24 06:33:24.133 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:33:34.155 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:33:34 + → module: 'TaskScheduler' +2025-10-24 06:33:34.155 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:33:44.163 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:33:44 + → module: 'TaskScheduler' +2025-10-24 06:33:44.163 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:33:54.187 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:33:54 + → module: 'TaskScheduler' +2025-10-24 06:33:54.187 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:34:04.220 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:34:04 + → module: 'TaskScheduler' +2025-10-24 06:34:04.220 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:34:14.247 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:34:14 + → module: 'TaskScheduler' +2025-10-24 06:34:14.247 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:34:24.255 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:34:24 + → module: 'TaskScheduler' +2025-10-24 06:34:24.255 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:34:34.263 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:34:34 + → module: 'TaskScheduler' +2025-10-24 06:34:34.263 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:34:44.291 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:34:44 + → module: 'TaskScheduler' +2025-10-24 06:34:44.291 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:34:54.300 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:34:54 + → module: 'TaskScheduler' +2025-10-24 06:34:54.300 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:35:04.308 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:35:04 + → module: 'TaskScheduler' +2025-10-24 06:35:04.308 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:35:04.317 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:35:04.354 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 06:35:04.354 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:35:04.355 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 06:35:04.355 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 06:35:04.355 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 06:35:04.359 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 06:35:04.382 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 06:35:04.382 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 06:35:04.383 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 22:00:57 + → module: 'NewsAPIClient' +2025-10-24 06:35:04.383 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 22:00:57 + → module: 'NewsAPIClient' +2025-10-24 06:35:04.384 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 06:35:04.865 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:35:04.890 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:35:04.912 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:35:05.244 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:35:05.246 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 06:35:05.246 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.86秒 + → module: 'NewsAPIClient' +2025-10-24 06:35:05.247 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 06:35:05.248 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 06:35:05.249 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 06:35:05.250 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 06:35:05.252 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 22:00:57 + → module: 'NewsAPIClient' +2025-10-24 06:35:05.252 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 22:00:57 + → module: 'NewsAPIClient' +2025-10-24 06:35:05.252 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.90秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 06:35:05.260 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 06:35:05.261 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:35:14.356 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:35:14 + → module: 'TaskScheduler' +2025-10-24 06:35:14.356 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:35:24.376 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:35:24 + → module: 'TaskScheduler' +2025-10-24 06:35:24.376 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:35:34.384 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:35:34 + → module: 'TaskScheduler' +2025-10-24 06:35:34.384 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:35:44.392 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:35:44 + → module: 'TaskScheduler' +2025-10-24 06:35:44.392 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:35:54.424 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:35:54 + → module: 'TaskScheduler' +2025-10-24 06:35:54.424 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:36:04.433 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:36:04 + → module: 'TaskScheduler' +2025-10-24 06:36:04.433 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:36:14.441 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:36:14 + → module: 'TaskScheduler' +2025-10-24 06:36:14.441 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:36:24.473 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:36:24 + → module: 'TaskScheduler' +2025-10-24 06:36:24.473 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:36:34.509 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:36:34 + → module: 'TaskScheduler' +2025-10-24 06:36:34.509 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:36:44.529 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:36:44 + → module: 'TaskScheduler' +2025-10-24 06:36:44.529 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:36:54.540 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:36:54 + → module: 'TaskScheduler' +2025-10-24 06:36:54.540 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:37:04.573 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:37:04 + → module: 'TaskScheduler' +2025-10-24 06:37:04.573 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:37:14.600 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:37:14 + → module: 'TaskScheduler' +2025-10-24 06:37:14.601 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:37:24.626 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:37:24 + → module: 'TaskScheduler' +2025-10-24 06:37:24.626 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:37:34.639 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:37:34 + → module: 'TaskScheduler' +2025-10-24 06:37:34.639 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:37:44.664 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:37:44 + → module: 'TaskScheduler' +2025-10-24 06:37:44.665 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:37:54.673 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:37:54 + → module: 'TaskScheduler' +2025-10-24 06:37:54.673 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:38:04.682 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:38:04 + → module: 'TaskScheduler' +2025-10-24 06:38:04.682 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:38:14.688 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:38:14 + → module: 'TaskScheduler' +2025-10-24 06:38:14.688 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:38:24.720 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:38:24 + → module: 'TaskScheduler' +2025-10-24 06:38:24.720 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:38:34.729 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:38:34 + → module: 'TaskScheduler' +2025-10-24 06:38:34.729 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:38:44.740 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:38:44 + → module: 'TaskScheduler' +2025-10-24 06:38:44.740 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:38:54.748 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:38:54 + → module: 'TaskScheduler' +2025-10-24 06:38:54.748 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:39:04.757 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:39:04 + → module: 'TaskScheduler' +2025-10-24 06:39:04.757 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:39:14.765 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:39:14 + → module: 'TaskScheduler' +2025-10-24 06:39:14.765 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:39:24.786 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:39:24 + → module: 'TaskScheduler' +2025-10-24 06:39:24.786 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:39:34.793 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:39:34 + → module: 'TaskScheduler' +2025-10-24 06:39:34.793 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:39:44.800 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:39:44 + → module: 'TaskScheduler' +2025-10-24 06:39:44.800 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:39:54.809 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:39:54 + → module: 'TaskScheduler' +2025-10-24 06:39:54.809 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:40:04.819 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:40:04 + → module: 'TaskScheduler' +2025-10-24 06:40:04.819 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:40:04.827 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:40:04.852 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 06:40:04.853 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:40:04.853 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 06:40:04.853 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 06:40:04.854 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 06:40:04.875 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 06:40:04.879 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 06:40:04.880 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 06:40:04.880 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 22:00:57 + → module: 'NewsAPIClient' +2025-10-24 06:40:04.880 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 22:00:57 + → module: 'NewsAPIClient' +2025-10-24 06:40:04.881 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 06:40:05.340 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:40:05.350 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:40:05.359 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:40:05.723 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:40:05.724 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 06:40:05.725 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.84秒 + → module: 'NewsAPIClient' +2025-10-24 06:40:05.725 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 06:40:05.726 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 06:40:05.727 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 06:40:05.729 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 06:40:05.729 | DEBUG | rss_subscriptions:235 - 处理条目 1: 10月24日早报 + → module: 'NewsAPIClient' +2025-10-24 06:40:05.744 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 06:40:05.746 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 06:40:05.748 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 06:40:05.756 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 06:40:05.757 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 06:40:05.758 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 22:34:22 + → module: 'NewsAPIClient' +2025-10-24 06:40:05.759 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 22:34:22 + → module: 'NewsAPIClient' +2025-10-24 06:40:05.759 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.91秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 06:40:05.781 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 06:40:05.781 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:40:14.855 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:40:14 + → module: 'TaskScheduler' +2025-10-24 06:40:14.856 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:40:24.866 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:40:24 + → module: 'TaskScheduler' +2025-10-24 06:40:24.866 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:40:34.877 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:40:34 + → module: 'TaskScheduler' +2025-10-24 06:40:34.877 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:40:44.885 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:40:44 + → module: 'TaskScheduler' +2025-10-24 06:40:44.885 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:40:54.907 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:40:54 + → module: 'TaskScheduler' +2025-10-24 06:40:54.907 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:41:04.934 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:41:04 + → module: 'TaskScheduler' +2025-10-24 06:41:04.934 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:41:14.941 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:41:14 + → module: 'TaskScheduler' +2025-10-24 06:41:14.941 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:41:24.964 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:41:24 + → module: 'TaskScheduler' +2025-10-24 06:41:24.964 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:41:34.984 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:41:34 + → module: 'TaskScheduler' +2025-10-24 06:41:34.984 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:41:45.012 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:41:45 + → module: 'TaskScheduler' +2025-10-24 06:41:45.012 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:41:55.039 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:41:55 + → module: 'TaskScheduler' +2025-10-24 06:41:55.039 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:42:05.047 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:42:05 + → module: 'TaskScheduler' +2025-10-24 06:42:05.047 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:42:15.055 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:42:15 + → module: 'TaskScheduler' +2025-10-24 06:42:15.055 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:42:25.062 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:42:25 + → module: 'TaskScheduler' +2025-10-24 06:42:25.062 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:42:35.069 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:42:35 + → module: 'TaskScheduler' +2025-10-24 06:42:35.070 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:42:45.092 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:42:45 + → module: 'TaskScheduler' +2025-10-24 06:42:45.093 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:42:55.100 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:42:55 + → module: 'TaskScheduler' +2025-10-24 06:42:55.100 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:43:05.123 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:43:05 + → module: 'TaskScheduler' +2025-10-24 06:43:05.123 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:43:15.131 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:43:15 + → module: 'TaskScheduler' +2025-10-24 06:43:15.132 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:43:25.143 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:43:25 + → module: 'TaskScheduler' +2025-10-24 06:43:25.143 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:43:35.152 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:43:35 + → module: 'TaskScheduler' +2025-10-24 06:43:35.152 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:43:45.171 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:43:45 + → module: 'TaskScheduler' +2025-10-24 06:43:45.171 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:43:55.178 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:43:55 + → module: 'TaskScheduler' +2025-10-24 06:43:55.178 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:44:05.204 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:44:05 + → module: 'TaskScheduler' +2025-10-24 06:44:05.204 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:44:15.214 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:44:15 + → module: 'TaskScheduler' +2025-10-24 06:44:15.214 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:44:25.223 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:44:25 + → module: 'TaskScheduler' +2025-10-24 06:44:25.223 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:44:35.249 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:44:35 + → module: 'TaskScheduler' +2025-10-24 06:44:35.249 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:44:45.256 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:44:45 + → module: 'TaskScheduler' +2025-10-24 06:44:45.256 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:44:55.288 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:44:55 + → module: 'TaskScheduler' +2025-10-24 06:44:55.288 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:45:05.296 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:45:05 + → module: 'TaskScheduler' +2025-10-24 06:45:05.296 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:45:05.304 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:45:05.348 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 06:45:05.348 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:45:05.349 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 06:45:05.349 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 06:45:05.349 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 06:45:05.352 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 06:45:05.356 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 06:45:05.356 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 06:45:05.357 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 22:34:22 + → module: 'NewsAPIClient' +2025-10-24 06:45:05.357 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 22:34:22 + → module: 'NewsAPIClient' +2025-10-24 06:45:05.358 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 06:45:05.766 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:45:05.781 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:45:05.816 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:45:06.116 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:45:06.117 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 06:45:06.118 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.76秒 + → module: 'NewsAPIClient' +2025-10-24 06:45:06.118 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 06:45:06.118 | DEBUG | rss_subscriptions:235 - 处理条目 1: 刷脸支付窃取生物信息?国家安全部:留心电子零售中的“数据刺客” + → module: 'NewsAPIClient' +2025-10-24 06:45:06.147 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 06:45:06.150 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 06:45:06.152 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 06:45:06.175 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 06:45:06.176 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 06:45:06.177 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 06:45:06.177 | DEBUG | rss_subscriptions:235 - 处理条目 1: 美国白宫东翼已被彻底拆除 + → module: 'NewsAPIClient' +2025-10-24 06:45:06.180 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 06:45:06.182 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 06:45:06.182 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 06:45:06.190 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 06:45:06.191 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 06:45:06.191 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 06:45:06.193 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 06:45:06.194 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 22:41:11 + → module: 'NewsAPIClient' +2025-10-24 06:45:06.195 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 22:41:11 + → module: 'NewsAPIClient' +2025-10-24 06:45:06.195 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.85秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 06:45:06.215 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 06:45:06.216 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:45:15.350 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:45:15 + → module: 'TaskScheduler' +2025-10-24 06:45:15.350 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:45:25.358 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:45:25 + → module: 'TaskScheduler' +2025-10-24 06:45:25.359 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:45:35.367 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:45:35 + → module: 'TaskScheduler' +2025-10-24 06:45:35.367 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:45:45.376 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:45:45 + → module: 'TaskScheduler' +2025-10-24 06:45:45.376 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:45:55.387 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:45:55 + → module: 'TaskScheduler' +2025-10-24 06:45:55.387 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:46:05.395 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:46:05 + → module: 'TaskScheduler' +2025-10-24 06:46:05.395 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:46:15.404 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:46:15 + → module: 'TaskScheduler' +2025-10-24 06:46:15.404 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:46:25.434 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:46:25 + → module: 'TaskScheduler' +2025-10-24 06:46:25.434 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:46:35.460 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:46:35 + → module: 'TaskScheduler' +2025-10-24 06:46:35.460 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:46:45.487 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:46:45 + → module: 'TaskScheduler' +2025-10-24 06:46:45.487 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:46:55.495 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:46:55 + → module: 'TaskScheduler' +2025-10-24 06:46:55.495 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:47:05.502 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:47:05 + → module: 'TaskScheduler' +2025-10-24 06:47:05.502 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:47:15.527 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:47:15 + → module: 'TaskScheduler' +2025-10-24 06:47:15.527 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:47:25.536 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:47:25 + → module: 'TaskScheduler' +2025-10-24 06:47:25.536 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:47:35.557 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:47:35 + → module: 'TaskScheduler' +2025-10-24 06:47:35.558 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:47:45.570 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:47:45 + → module: 'TaskScheduler' +2025-10-24 06:47:45.570 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:47:55.580 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:47:55 + → module: 'TaskScheduler' +2025-10-24 06:47:55.580 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:48:05.589 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:48:05 + → module: 'TaskScheduler' +2025-10-24 06:48:05.589 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:48:15.596 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:48:15 + → module: 'TaskScheduler' +2025-10-24 06:48:15.596 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:48:25.604 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:48:25 + → module: 'TaskScheduler' +2025-10-24 06:48:25.604 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:48:35.612 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:48:35 + → module: 'TaskScheduler' +2025-10-24 06:48:35.612 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:48:45.637 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:48:45 + → module: 'TaskScheduler' +2025-10-24 06:48:45.637 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:48:55.663 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:48:55 + → module: 'TaskScheduler' +2025-10-24 06:48:55.663 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:49:05.684 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:49:05 + → module: 'TaskScheduler' +2025-10-24 06:49:05.684 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:49:15.694 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:49:15 + → module: 'TaskScheduler' +2025-10-24 06:49:15.694 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:49:25.728 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:49:25 + → module: 'TaskScheduler' +2025-10-24 06:49:25.728 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:49:35.735 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:49:35 + → module: 'TaskScheduler' +2025-10-24 06:49:35.735 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:49:45.745 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:49:45 + → module: 'TaskScheduler' +2025-10-24 06:49:45.745 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:49:55.775 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:49:55 + → module: 'TaskScheduler' +2025-10-24 06:49:55.775 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:50:05.794 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:50:05 + → module: 'TaskScheduler' +2025-10-24 06:50:05.794 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:50:05.817 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:50:05.839 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 06:50:05.840 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:50:05.840 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 06:50:05.840 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 06:50:05.840 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 06:50:05.859 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 06:50:05.862 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 06:50:05.862 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 06:50:05.863 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 22:41:11 + → module: 'NewsAPIClient' +2025-10-24 06:50:05.863 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 22:41:11 + → module: 'NewsAPIClient' +2025-10-24 06:50:05.863 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 06:50:06.310 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:50:06.357 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:50:06.368 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:50:06.629 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:50:06.633 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 06:50:06.634 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.77秒 + → module: 'NewsAPIClient' +2025-10-24 06:50:06.634 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 06:50:06.636 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 06:50:06.639 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 06:50:06.641 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 06:50:06.645 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 22:41:11 + → module: 'NewsAPIClient' +2025-10-24 06:50:06.645 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 22:41:11 + → module: 'NewsAPIClient' +2025-10-24 06:50:06.645 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.81秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 06:50:06.653 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 06:50:06.654 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:50:15.842 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:50:15 + → module: 'TaskScheduler' +2025-10-24 06:50:15.842 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:50:25.862 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:50:25 + → module: 'TaskScheduler' +2025-10-24 06:50:25.862 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:50:35.870 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:50:35 + → module: 'TaskScheduler' +2025-10-24 06:50:35.870 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:50:45.882 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:50:45 + → module: 'TaskScheduler' +2025-10-24 06:50:45.882 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:50:55.905 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:50:55 + → module: 'TaskScheduler' +2025-10-24 06:50:55.905 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:51:05.913 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:51:05 + → module: 'TaskScheduler' +2025-10-24 06:51:05.913 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:51:15.942 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:51:15 + → module: 'TaskScheduler' +2025-10-24 06:51:15.943 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:51:25.954 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:51:25 + → module: 'TaskScheduler' +2025-10-24 06:51:25.954 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:51:35.962 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:51:35 + → module: 'TaskScheduler' +2025-10-24 06:51:35.962 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:51:45.989 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:51:45 + → module: 'TaskScheduler' +2025-10-24 06:51:45.989 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:51:55.997 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:51:55 + → module: 'TaskScheduler' +2025-10-24 06:51:55.997 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:52:06.005 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:52:06 + → module: 'TaskScheduler' +2025-10-24 06:52:06.005 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:52:16.038 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:52:16 + → module: 'TaskScheduler' +2025-10-24 06:52:16.038 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:52:26.046 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:52:26 + → module: 'TaskScheduler' +2025-10-24 06:52:26.046 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:52:36.053 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:52:36 + → module: 'TaskScheduler' +2025-10-24 06:52:36.053 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:52:46.062 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:52:46 + → module: 'TaskScheduler' +2025-10-24 06:52:46.062 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:52:56.072 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:52:56 + → module: 'TaskScheduler' +2025-10-24 06:52:56.072 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:53:06.092 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:53:06 + → module: 'TaskScheduler' +2025-10-24 06:53:06.093 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:53:16.101 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:53:16 + → module: 'TaskScheduler' +2025-10-24 06:53:16.101 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:53:26.109 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:53:26 + → module: 'TaskScheduler' +2025-10-24 06:53:26.109 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:53:36.122 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:53:36 + → module: 'TaskScheduler' +2025-10-24 06:53:36.122 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:53:46.132 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:53:46 + → module: 'TaskScheduler' +2025-10-24 06:53:46.132 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:53:56.158 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:53:56 + → module: 'TaskScheduler' +2025-10-24 06:53:56.158 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:54:06.167 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:54:06 + → module: 'TaskScheduler' +2025-10-24 06:54:06.168 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:54:16.180 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:54:16 + → module: 'TaskScheduler' +2025-10-24 06:54:16.180 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:54:26.189 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:54:26 + → module: 'TaskScheduler' +2025-10-24 06:54:26.189 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:54:36.219 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:54:36 + → module: 'TaskScheduler' +2025-10-24 06:54:36.219 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:54:46.242 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:54:46 + → module: 'TaskScheduler' +2025-10-24 06:54:46.243 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:54:56.267 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:54:56 + → module: 'TaskScheduler' +2025-10-24 06:54:56.268 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:55:06.276 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:55:06 + → module: 'TaskScheduler' +2025-10-24 06:55:06.276 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:55:06.284 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:55:06.293 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 06:55:06.293 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:55:06.294 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 06:55:06.295 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 06:55:06.295 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 06:55:06.299 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 06:55:06.303 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 06:55:06.304 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 06:55:06.305 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 22:41:11 + → module: 'NewsAPIClient' +2025-10-24 06:55:06.305 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 22:41:11 + → module: 'NewsAPIClient' +2025-10-24 06:55:06.305 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 06:55:06.764 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:55:06.807 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:55:06.824 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:55:07.108 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 06:55:07.108 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 06:55:07.109 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.80秒 + → module: 'NewsAPIClient' +2025-10-24 06:55:07.109 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 06:55:07.109 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 06:55:07.112 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 06:55:07.112 | DEBUG | rss_subscriptions:235 - 处理条目 1: 日本福岛突发地震,核电站附近震感明显 + → module: 'NewsAPIClient' +2025-10-24 06:55:07.129 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 06:55:07.130 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 06:55:07.131 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 06:55:07.152 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 06:55:07.153 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 06:55:07.153 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 06:55:07.156 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 22:50:07 + → module: 'NewsAPIClient' +2025-10-24 06:55:07.157 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 22:50:07 + → module: 'NewsAPIClient' +2025-10-24 06:55:07.158 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.86秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 06:55:07.167 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 06:55:07.168 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 06:55:16.296 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:55:16 + → module: 'TaskScheduler' +2025-10-24 06:55:16.296 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:55:26.305 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:55:26 + → module: 'TaskScheduler' +2025-10-24 06:55:26.305 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:55:36.312 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:55:36 + → module: 'TaskScheduler' +2025-10-24 06:55:36.312 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:55:46.324 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:55:46 + → module: 'TaskScheduler' +2025-10-24 06:55:46.324 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:55:56.334 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:55:56 + → module: 'TaskScheduler' +2025-10-24 06:55:56.334 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:56:06.359 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:56:06 + → module: 'TaskScheduler' +2025-10-24 06:56:06.359 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:56:16.383 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:56:16 + → module: 'TaskScheduler' +2025-10-24 06:56:16.383 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:56:26.392 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:56:26 + → module: 'TaskScheduler' +2025-10-24 06:56:26.392 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:56:36.401 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:56:36 + → module: 'TaskScheduler' +2025-10-24 06:56:36.401 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:56:46.433 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:56:46 + → module: 'TaskScheduler' +2025-10-24 06:56:46.433 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:56:56.446 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:56:56 + → module: 'TaskScheduler' +2025-10-24 06:56:56.446 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:57:06.457 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:57:06 + → module: 'TaskScheduler' +2025-10-24 06:57:06.458 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:57:16.468 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:57:16 + → module: 'TaskScheduler' +2025-10-24 06:57:16.469 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:57:26.476 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:57:26 + → module: 'TaskScheduler' +2025-10-24 06:57:26.476 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:57:36.484 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:57:36 + → module: 'TaskScheduler' +2025-10-24 06:57:36.484 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:57:46.511 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:57:46 + → module: 'TaskScheduler' +2025-10-24 06:57:46.511 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:57:56.542 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:57:56 + → module: 'TaskScheduler' +2025-10-24 06:57:56.542 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:58:06.575 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:58:06 + → module: 'TaskScheduler' +2025-10-24 06:58:06.575 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:58:16.582 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:58:16 + → module: 'TaskScheduler' +2025-10-24 06:58:16.583 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:58:26.591 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:58:26 + → module: 'TaskScheduler' +2025-10-24 06:58:26.591 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:58:36.612 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:58:36 + → module: 'TaskScheduler' +2025-10-24 06:58:36.614 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:58:46.639 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:58:46 + → module: 'TaskScheduler' +2025-10-24 06:58:46.639 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:58:56.671 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:58:56 + → module: 'TaskScheduler' +2025-10-24 06:58:56.671 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:59:06.701 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:59:06 + → module: 'TaskScheduler' +2025-10-24 06:59:06.701 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:59:16.710 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:59:16 + → module: 'TaskScheduler' +2025-10-24 06:59:16.710 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:59:26.718 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:59:26 + → module: 'TaskScheduler' +2025-10-24 06:59:26.718 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:59:36.726 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:59:36 + → module: 'TaskScheduler' +2025-10-24 06:59:36.726 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:59:46.734 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:59:46 + → module: 'TaskScheduler' +2025-10-24 06:59:46.734 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 06:59:56.741 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 06:59:56 + → module: 'TaskScheduler' +2025-10-24 06:59:56.741 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:00:06.749 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:00:06 + → module: 'TaskScheduler' +2025-10-24 07:00:06.749 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:00:06.772 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:00:06.781 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 07:00:06.782 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:00:06.782 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 07:00:06.782 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 07:00:06.782 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 07:00:06.786 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 07:00:06.801 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 07:00:06.802 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 07:00:06.803 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 22:50:07 + → module: 'NewsAPIClient' +2025-10-24 07:00:06.803 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 22:50:07 + → module: 'NewsAPIClient' +2025-10-24 07:00:06.803 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 07:00:07.247 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:00:07.261 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:00:07.283 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:00:07.628 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:00:07.630 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 07:00:07.630 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.83秒 + → module: 'NewsAPIClient' +2025-10-24 07:00:07.630 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 07:00:07.632 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 07:00:07.634 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 07:00:07.634 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 07:00:07.637 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 22:50:07 + → module: 'NewsAPIClient' +2025-10-24 07:00:07.637 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 22:50:07 + → module: 'NewsAPIClient' +2025-10-24 07:00:07.637 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.86秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 07:00:07.647 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 07:00:07.647 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:00:16.784 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:00:16 + → module: 'TaskScheduler' +2025-10-24 07:00:16.784 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:00:26.791 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:00:26 + → module: 'TaskScheduler' +2025-10-24 07:00:26.791 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:00:36.812 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:00:36 + → module: 'TaskScheduler' +2025-10-24 07:00:36.812 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:00:46.836 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:00:46 + → module: 'TaskScheduler' +2025-10-24 07:00:46.836 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:00:56.845 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:00:56 + → module: 'TaskScheduler' +2025-10-24 07:00:56.845 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:01:06.855 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:01:06 + → module: 'TaskScheduler' +2025-10-24 07:01:06.855 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:01:16.867 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:01:16 + → module: 'TaskScheduler' +2025-10-24 07:01:16.867 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:01:26.875 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:01:26 + → module: 'TaskScheduler' +2025-10-24 07:01:26.875 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:01:36.882 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:01:36 + → module: 'TaskScheduler' +2025-10-24 07:01:36.882 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:01:46.890 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:01:46 + → module: 'TaskScheduler' +2025-10-24 07:01:46.890 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:01:56.915 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:01:56 + → module: 'TaskScheduler' +2025-10-24 07:01:56.915 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:02:06.933 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:02:06 + → module: 'TaskScheduler' +2025-10-24 07:02:06.933 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:02:16.941 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:02:16 + → module: 'TaskScheduler' +2025-10-24 07:02:16.941 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:02:26.967 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:02:26 + → module: 'TaskScheduler' +2025-10-24 07:02:26.967 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:02:36.975 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:02:36 + → module: 'TaskScheduler' +2025-10-24 07:02:36.975 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:02:46.983 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:02:46 + → module: 'TaskScheduler' +2025-10-24 07:02:46.983 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:02:57.003 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:02:57 + → module: 'TaskScheduler' +2025-10-24 07:02:57.004 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:03:07.012 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:03:07 + → module: 'TaskScheduler' +2025-10-24 07:03:07.012 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:03:17.041 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:03:17 + → module: 'TaskScheduler' +2025-10-24 07:03:17.041 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:03:27.064 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:03:27 + → module: 'TaskScheduler' +2025-10-24 07:03:27.064 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:03:37.073 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:03:37 + → module: 'TaskScheduler' +2025-10-24 07:03:37.073 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:03:47.083 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:03:47 + → module: 'TaskScheduler' +2025-10-24 07:03:47.083 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:03:57.090 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:03:57 + → module: 'TaskScheduler' +2025-10-24 07:03:57.090 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:04:07.114 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:04:07 + → module: 'TaskScheduler' +2025-10-24 07:04:07.114 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:04:17.145 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:04:17 + → module: 'TaskScheduler' +2025-10-24 07:04:17.145 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:04:27.154 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:04:27 + → module: 'TaskScheduler' +2025-10-24 07:04:27.154 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:04:37.187 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:04:37 + → module: 'TaskScheduler' +2025-10-24 07:04:37.187 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:04:47.196 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:04:47 + → module: 'TaskScheduler' +2025-10-24 07:04:47.196 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:04:57.206 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:04:57 + → module: 'TaskScheduler' +2025-10-24 07:04:57.206 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:05:07.218 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:05:07 + → module: 'TaskScheduler' +2025-10-24 07:05:07.218 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:05:07.235 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:05:07.258 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 07:05:07.259 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:05:07.259 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 07:05:07.259 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 07:05:07.260 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 07:05:07.265 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 07:05:07.269 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 07:05:07.270 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 07:05:07.271 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 22:50:07 + → module: 'NewsAPIClient' +2025-10-24 07:05:07.271 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 22:50:07 + → module: 'NewsAPIClient' +2025-10-24 07:05:07.272 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 07:05:07.707 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:05:07.720 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:05:07.732 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:05:08.028 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:05:08.030 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 07:05:08.031 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.76秒 + → module: 'NewsAPIClient' +2025-10-24 07:05:08.031 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 07:05:08.033 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 07:05:08.034 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 07:05:08.035 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 07:05:08.036 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 22:50:07 + → module: 'NewsAPIClient' +2025-10-24 07:05:08.036 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 22:50:07 + → module: 'NewsAPIClient' +2025-10-24 07:05:08.037 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.78秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 07:05:08.069 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 07:05:08.071 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:05:17.261 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:05:17 + → module: 'TaskScheduler' +2025-10-24 07:05:17.262 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:05:27.268 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:05:27 + → module: 'TaskScheduler' +2025-10-24 07:05:27.268 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:05:37.287 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:05:37 + → module: 'TaskScheduler' +2025-10-24 07:05:37.287 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:05:47.295 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:05:47 + → module: 'TaskScheduler' +2025-10-24 07:05:47.295 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:05:57.326 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:05:57 + → module: 'TaskScheduler' +2025-10-24 07:05:57.327 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:06:07.349 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:06:07 + → module: 'TaskScheduler' +2025-10-24 07:06:07.349 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:06:17.357 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:06:17 + → module: 'TaskScheduler' +2025-10-24 07:06:17.357 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:06:27.365 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:06:27 + → module: 'TaskScheduler' +2025-10-24 07:06:27.365 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:06:37.374 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:06:37 + → module: 'TaskScheduler' +2025-10-24 07:06:37.374 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:06:47.385 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:06:47 + → module: 'TaskScheduler' +2025-10-24 07:06:47.386 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:06:57.393 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:06:57 + → module: 'TaskScheduler' +2025-10-24 07:06:57.393 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:07:07.401 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:07:07 + → module: 'TaskScheduler' +2025-10-24 07:07:07.401 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:07:17.419 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:07:17 + → module: 'TaskScheduler' +2025-10-24 07:07:17.419 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:07:27.430 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:07:27 + → module: 'TaskScheduler' +2025-10-24 07:07:27.430 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:07:37.452 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:07:37 + → module: 'TaskScheduler' +2025-10-24 07:07:37.452 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:07:47.482 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:07:47 + → module: 'TaskScheduler' +2025-10-24 07:07:47.482 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:07:57.503 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:07:57 + → module: 'TaskScheduler' +2025-10-24 07:07:57.503 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:08:07.510 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:08:07 + → module: 'TaskScheduler' +2025-10-24 07:08:07.510 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:08:17.534 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:08:17 + → module: 'TaskScheduler' +2025-10-24 07:08:17.534 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:08:27.541 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:08:27 + → module: 'TaskScheduler' +2025-10-24 07:08:27.541 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:08:37.550 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:08:37 + → module: 'TaskScheduler' +2025-10-24 07:08:37.550 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:08:47.562 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:08:47 + → module: 'TaskScheduler' +2025-10-24 07:08:47.562 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:08:57.572 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:08:57 + → module: 'TaskScheduler' +2025-10-24 07:08:57.572 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:08:57.580 | INFO | main:87 - 小时任务统计 + → module: 'Main' + → 总任务数: 12 + → 成功: 12 + → 失败: 0 +2025-10-24 07:09:07.581 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:09:07 + → module: 'TaskScheduler' +2025-10-24 07:09:07.581 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:09:17.590 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:09:17 + → module: 'TaskScheduler' +2025-10-24 07:09:17.590 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:09:27.600 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:09:27 + → module: 'TaskScheduler' +2025-10-24 07:09:27.601 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:09:37.608 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:09:37 + → module: 'TaskScheduler' +2025-10-24 07:09:37.608 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:09:47.616 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:09:47 + → module: 'TaskScheduler' +2025-10-24 07:09:47.616 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:09:57.624 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:09:57 + → module: 'TaskScheduler' +2025-10-24 07:09:57.624 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:10:07.654 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:10:07 + → module: 'TaskScheduler' +2025-10-24 07:10:07.654 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:10:07.663 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:10:07.710 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 07:10:07.710 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:10:07.710 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 07:10:07.710 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 07:10:07.711 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 07:10:07.737 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 07:10:07.754 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 07:10:07.755 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 07:10:07.756 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 22:50:07 + → module: 'NewsAPIClient' +2025-10-24 07:10:07.756 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 22:50:07 + → module: 'NewsAPIClient' +2025-10-24 07:10:07.756 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 07:10:08.239 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:10:08.258 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:10:08.268 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:10:08.583 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:10:08.585 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 07:10:08.586 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.83秒 + → module: 'NewsAPIClient' +2025-10-24 07:10:08.586 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 07:10:08.587 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 07:10:08.588 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 07:10:08.589 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 07:10:08.591 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 22:50:07 + → module: 'NewsAPIClient' +2025-10-24 07:10:08.591 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 22:50:07 + → module: 'NewsAPIClient' +2025-10-24 07:10:08.592 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.88秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 07:10:08.614 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 07:10:08.614 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:10:17.712 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:10:17 + → module: 'TaskScheduler' +2025-10-24 07:10:17.713 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:10:27.726 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:10:27 + → module: 'TaskScheduler' +2025-10-24 07:10:27.726 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:10:37.744 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:10:37 + → module: 'TaskScheduler' +2025-10-24 07:10:37.744 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:10:47.751 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:10:47 + → module: 'TaskScheduler' +2025-10-24 07:10:47.752 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:10:57.761 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:10:57 + → module: 'TaskScheduler' +2025-10-24 07:10:57.761 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:11:07.797 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:11:07 + → module: 'TaskScheduler' +2025-10-24 07:11:07.797 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:11:17.808 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:11:17 + → module: 'TaskScheduler' +2025-10-24 07:11:17.808 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:11:27.816 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:11:27 + → module: 'TaskScheduler' +2025-10-24 07:11:27.816 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:11:37.828 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:11:37 + → module: 'TaskScheduler' +2025-10-24 07:11:37.828 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:11:47.837 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:11:47 + → module: 'TaskScheduler' +2025-10-24 07:11:47.837 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:11:57.846 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:11:57 + → module: 'TaskScheduler' +2025-10-24 07:11:57.846 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:12:07.854 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:12:07 + → module: 'TaskScheduler' +2025-10-24 07:12:07.854 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:12:17.861 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:12:17 + → module: 'TaskScheduler' +2025-10-24 07:12:17.861 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:12:27.868 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:12:27 + → module: 'TaskScheduler' +2025-10-24 07:12:27.869 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:12:37.877 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:12:37 + → module: 'TaskScheduler' +2025-10-24 07:12:37.877 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:12:47.889 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:12:47 + → module: 'TaskScheduler' +2025-10-24 07:12:47.889 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:12:57.900 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:12:57 + → module: 'TaskScheduler' +2025-10-24 07:12:57.900 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:13:07.920 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:13:07 + → module: 'TaskScheduler' +2025-10-24 07:13:07.921 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:13:17.929 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:13:17 + → module: 'TaskScheduler' +2025-10-24 07:13:17.929 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:13:27.936 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:13:27 + → module: 'TaskScheduler' +2025-10-24 07:13:27.937 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:13:37.959 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:13:37 + → module: 'TaskScheduler' +2025-10-24 07:13:37.959 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:13:47.967 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:13:47 + → module: 'TaskScheduler' +2025-10-24 07:13:47.967 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:13:57.975 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:13:57 + → module: 'TaskScheduler' +2025-10-24 07:13:57.975 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:14:07.982 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:14:07 + → module: 'TaskScheduler' +2025-10-24 07:14:07.982 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:14:17.990 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:14:17 + → module: 'TaskScheduler' +2025-10-24 07:14:17.991 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:14:27.999 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:14:27 + → module: 'TaskScheduler' +2025-10-24 07:14:27.999 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:14:38.020 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:14:38 + → module: 'TaskScheduler' +2025-10-24 07:14:38.020 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:14:48.046 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:14:48 + → module: 'TaskScheduler' +2025-10-24 07:14:48.046 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:14:58.075 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:14:58 + → module: 'TaskScheduler' +2025-10-24 07:14:58.075 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:15:08.105 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:15:08 + → module: 'TaskScheduler' +2025-10-24 07:15:08.105 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:15:08.132 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:15:08.154 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 07:15:08.155 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:15:08.156 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 07:15:08.156 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 07:15:08.156 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 07:15:08.159 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 07:15:08.162 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 07:15:08.162 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 07:15:08.163 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 22:50:07 + → module: 'NewsAPIClient' +2025-10-24 07:15:08.163 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 22:50:07 + → module: 'NewsAPIClient' +2025-10-24 07:15:08.163 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 07:15:08.641 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:15:08.665 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:15:08.689 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:15:08.986 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:15:08.988 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 07:15:08.988 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.82秒 + → module: 'NewsAPIClient' +2025-10-24 07:15:08.989 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 07:15:08.990 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 07:15:08.991 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 07:15:08.993 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 07:15:08.993 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 22:50:07 + → module: 'NewsAPIClient' +2025-10-24 07:15:08.995 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 22:50:07 + → module: 'NewsAPIClient' +2025-10-24 07:15:08.995 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.84秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 07:15:09.027 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 07:15:09.027 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:15:18.157 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:15:18 + → module: 'TaskScheduler' +2025-10-24 07:15:18.157 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:15:28.188 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:15:28 + → module: 'TaskScheduler' +2025-10-24 07:15:28.188 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:15:38.210 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:15:38 + → module: 'TaskScheduler' +2025-10-24 07:15:38.210 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:15:48.234 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:15:48 + → module: 'TaskScheduler' +2025-10-24 07:15:48.234 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:15:58.244 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:15:58 + → module: 'TaskScheduler' +2025-10-24 07:15:58.244 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:16:08.252 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:16:08 + → module: 'TaskScheduler' +2025-10-24 07:16:08.252 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:16:18.276 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:16:18 + → module: 'TaskScheduler' +2025-10-24 07:16:18.276 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:16:28.284 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:16:28 + → module: 'TaskScheduler' +2025-10-24 07:16:28.284 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:16:38.305 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:16:38 + → module: 'TaskScheduler' +2025-10-24 07:16:38.305 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:16:48.325 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:16:48 + → module: 'TaskScheduler' +2025-10-24 07:16:48.325 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:16:58.334 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:16:58 + → module: 'TaskScheduler' +2025-10-24 07:16:58.334 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:17:08.345 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:17:08 + → module: 'TaskScheduler' +2025-10-24 07:17:08.345 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:17:18.356 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:17:18 + → module: 'TaskScheduler' +2025-10-24 07:17:18.356 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:17:28.387 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:17:28 + → module: 'TaskScheduler' +2025-10-24 07:17:28.387 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:17:38.406 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:17:38 + → module: 'TaskScheduler' +2025-10-24 07:17:38.406 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:17:48.414 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:17:48 + → module: 'TaskScheduler' +2025-10-24 07:17:48.414 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:17:58.424 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:17:58 + → module: 'TaskScheduler' +2025-10-24 07:17:58.424 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:18:08.448 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:18:08 + → module: 'TaskScheduler' +2025-10-24 07:18:08.448 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:18:18.472 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:18:18 + → module: 'TaskScheduler' +2025-10-24 07:18:18.472 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:18:28.498 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:18:28 + → module: 'TaskScheduler' +2025-10-24 07:18:28.498 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:18:38.529 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:18:38 + → module: 'TaskScheduler' +2025-10-24 07:18:38.529 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:18:48.538 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:18:48 + → module: 'TaskScheduler' +2025-10-24 07:18:48.538 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:18:58.546 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:18:58 + → module: 'TaskScheduler' +2025-10-24 07:18:58.547 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:19:08.582 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:19:08 + → module: 'TaskScheduler' +2025-10-24 07:19:08.582 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:19:18.609 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:19:18 + → module: 'TaskScheduler' +2025-10-24 07:19:18.609 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:19:28.617 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:19:28 + → module: 'TaskScheduler' +2025-10-24 07:19:28.617 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:19:38.629 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:19:38 + → module: 'TaskScheduler' +2025-10-24 07:19:38.630 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:19:48.638 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:19:48 + → module: 'TaskScheduler' +2025-10-24 07:19:48.638 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:19:58.649 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:19:58 + → module: 'TaskScheduler' +2025-10-24 07:19:58.649 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:20:08.656 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:20:08 + → module: 'TaskScheduler' +2025-10-24 07:20:08.656 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:20:08.663 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:20:08.694 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 07:20:08.695 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:20:08.695 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 07:20:08.695 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 07:20:08.696 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 07:20:08.717 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 07:20:08.732 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 07:20:08.732 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 07:20:08.733 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 22:50:07 + → module: 'NewsAPIClient' +2025-10-24 07:20:08.733 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 22:50:07 + → module: 'NewsAPIClient' +2025-10-24 07:20:08.733 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 07:20:09.179 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:20:09.196 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:20:09.215 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:20:09.522 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:20:09.524 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 07:20:09.524 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.79秒 + → module: 'NewsAPIClient' +2025-10-24 07:20:09.525 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 07:20:09.526 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 07:20:09.527 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 07:20:09.528 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 07:20:09.528 | DEBUG | rss_subscriptions:235 - 处理条目 1: 应聘货运司机,咋就成了企业的“合作方”? + → module: 'NewsAPIClient' +2025-10-24 07:20:09.552 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 07:20:09.554 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 07:20:09.555 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 07:20:09.563 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 07:20:09.564 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 07:20:09.565 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 23:19:17 + → module: 'NewsAPIClient' +2025-10-24 07:20:09.565 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 23:19:17 + → module: 'NewsAPIClient' +2025-10-24 07:20:09.565 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.87秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 07:20:09.588 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 07:20:09.588 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:20:18.696 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:20:18 + → module: 'TaskScheduler' +2025-10-24 07:20:18.696 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:20:28.705 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:20:28 + → module: 'TaskScheduler' +2025-10-24 07:20:28.705 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:20:38.726 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:20:38 + → module: 'TaskScheduler' +2025-10-24 07:20:38.726 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:20:48.733 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:20:48 + → module: 'TaskScheduler' +2025-10-24 07:20:48.733 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:20:58.764 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:20:58 + → module: 'TaskScheduler' +2025-10-24 07:20:58.764 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:21:08.773 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:21:08 + → module: 'TaskScheduler' +2025-10-24 07:21:08.773 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:21:18.795 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:21:18 + → module: 'TaskScheduler' +2025-10-24 07:21:18.795 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:21:28.801 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:21:28 + → module: 'TaskScheduler' +2025-10-24 07:21:28.801 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:21:38.811 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:21:38 + → module: 'TaskScheduler' +2025-10-24 07:21:38.811 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:21:48.820 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:21:48 + → module: 'TaskScheduler' +2025-10-24 07:21:48.820 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:21:58.827 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:21:58 + → module: 'TaskScheduler' +2025-10-24 07:21:58.827 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:22:08.835 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:22:08 + → module: 'TaskScheduler' +2025-10-24 07:22:08.835 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:22:18.845 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:22:18 + → module: 'TaskScheduler' +2025-10-24 07:22:18.845 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:22:28.854 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:22:28 + → module: 'TaskScheduler' +2025-10-24 07:22:28.855 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:22:38.863 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:22:38 + → module: 'TaskScheduler' +2025-10-24 07:22:38.863 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:22:48.875 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:22:48 + → module: 'TaskScheduler' +2025-10-24 07:22:48.875 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:22:58.885 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:22:58 + → module: 'TaskScheduler' +2025-10-24 07:22:58.886 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:23:08.893 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:23:08 + → module: 'TaskScheduler' +2025-10-24 07:23:08.893 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:23:18.901 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:23:18 + → module: 'TaskScheduler' +2025-10-24 07:23:18.901 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:23:28.932 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:23:28 + → module: 'TaskScheduler' +2025-10-24 07:23:28.932 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:23:38.939 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:23:38 + → module: 'TaskScheduler' +2025-10-24 07:23:38.939 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:23:48.946 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:23:48 + → module: 'TaskScheduler' +2025-10-24 07:23:48.946 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:23:58.954 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:23:58 + → module: 'TaskScheduler' +2025-10-24 07:23:58.954 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:24:08.961 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:24:08 + → module: 'TaskScheduler' +2025-10-24 07:24:08.961 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:24:18.981 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:24:18 + → module: 'TaskScheduler' +2025-10-24 07:24:18.982 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:24:28.992 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:24:28 + → module: 'TaskScheduler' +2025-10-24 07:24:28.992 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:24:39.003 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:24:39 + → module: 'TaskScheduler' +2025-10-24 07:24:39.004 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:24:49.015 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:24:49 + → module: 'TaskScheduler' +2025-10-24 07:24:49.015 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:24:59.023 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:24:59 + → module: 'TaskScheduler' +2025-10-24 07:24:59.023 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:25:09.046 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:25:09 + → module: 'TaskScheduler' +2025-10-24 07:25:09.047 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:25:09.054 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:25:09.062 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 07:25:09.063 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:25:09.063 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 07:25:09.063 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 07:25:09.063 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 07:25:09.067 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 07:25:09.069 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 07:25:09.069 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 07:25:09.070 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 23:19:17 + → module: 'NewsAPIClient' +2025-10-24 07:25:09.070 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 23:19:17 + → module: 'NewsAPIClient' +2025-10-24 07:25:09.071 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 07:25:09.550 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:25:09.563 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:25:09.579 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:25:09.877 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:25:09.879 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 07:25:09.880 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.81秒 + → module: 'NewsAPIClient' +2025-10-24 07:25:09.880 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 07:25:09.881 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 07:25:09.882 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 07:25:09.883 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 07:25:09.884 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 23:19:17 + → module: 'NewsAPIClient' +2025-10-24 07:25:09.885 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 23:19:17 + → module: 'NewsAPIClient' +2025-10-24 07:25:09.885 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.82秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 07:25:09.892 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 07:25:09.892 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:25:19.065 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:25:19 + → module: 'TaskScheduler' +2025-10-24 07:25:19.065 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:25:29.072 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:25:29 + → module: 'TaskScheduler' +2025-10-24 07:25:29.072 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:25:39.079 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:25:39 + → module: 'TaskScheduler' +2025-10-24 07:25:39.079 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:25:49.087 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:25:49 + → module: 'TaskScheduler' +2025-10-24 07:25:49.087 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:25:59.107 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:25:59 + → module: 'TaskScheduler' +2025-10-24 07:25:59.107 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:26:09.114 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:26:09 + → module: 'TaskScheduler' +2025-10-24 07:26:09.115 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:26:19.127 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:26:19 + → module: 'TaskScheduler' +2025-10-24 07:26:19.127 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:26:29.139 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:26:29 + → module: 'TaskScheduler' +2025-10-24 07:26:29.139 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:26:39.147 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:26:39 + → module: 'TaskScheduler' +2025-10-24 07:26:39.147 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:26:49.178 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:26:49 + → module: 'TaskScheduler' +2025-10-24 07:26:49.178 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:26:59.186 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:26:59 + → module: 'TaskScheduler' +2025-10-24 07:26:59.186 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:27:09.197 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:27:09 + → module: 'TaskScheduler' +2025-10-24 07:27:09.197 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:27:19.205 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:27:19 + → module: 'TaskScheduler' +2025-10-24 07:27:19.205 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:27:29.213 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:27:29 + → module: 'TaskScheduler' +2025-10-24 07:27:29.213 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:27:39.220 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:27:39 + → module: 'TaskScheduler' +2025-10-24 07:27:39.220 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:27:49.250 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:27:49 + → module: 'TaskScheduler' +2025-10-24 07:27:49.250 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:27:59.277 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:27:59 + → module: 'TaskScheduler' +2025-10-24 07:27:59.277 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:28:09.302 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:28:09 + → module: 'TaskScheduler' +2025-10-24 07:28:09.303 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:28:19.314 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:28:19 + → module: 'TaskScheduler' +2025-10-24 07:28:19.314 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:28:29.321 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:28:29 + → module: 'TaskScheduler' +2025-10-24 07:28:29.321 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:28:39.332 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:28:39 + → module: 'TaskScheduler' +2025-10-24 07:28:39.332 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:28:49.340 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:28:49 + → module: 'TaskScheduler' +2025-10-24 07:28:49.340 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:28:59.369 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:28:59 + → module: 'TaskScheduler' +2025-10-24 07:28:59.369 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:29:09.377 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:29:09 + → module: 'TaskScheduler' +2025-10-24 07:29:09.377 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:29:19.385 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:29:19 + → module: 'TaskScheduler' +2025-10-24 07:29:19.385 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:29:29.393 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:29:29 + → module: 'TaskScheduler' +2025-10-24 07:29:29.394 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:29:39.414 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:29:39 + → module: 'TaskScheduler' +2025-10-24 07:29:39.414 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:29:49.445 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:29:49 + → module: 'TaskScheduler' +2025-10-24 07:29:49.445 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:29:59.455 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:29:59 + → module: 'TaskScheduler' +2025-10-24 07:29:59.455 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:30:09.463 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:30:09 + → module: 'TaskScheduler' +2025-10-24 07:30:09.463 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:30:09.475 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:30:09.497 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 07:30:09.498 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:30:09.498 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 07:30:09.498 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 07:30:09.498 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 07:30:09.513 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 07:30:09.516 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 07:30:09.516 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 07:30:09.517 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 23:19:17 + → module: 'NewsAPIClient' +2025-10-24 07:30:09.517 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 23:19:17 + → module: 'NewsAPIClient' +2025-10-24 07:30:09.517 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 07:30:09.920 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:30:09.933 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:30:09.950 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:30:10.305 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:30:10.307 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 07:30:10.308 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.79秒 + → module: 'NewsAPIClient' +2025-10-24 07:30:10.308 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 07:30:10.310 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 07:30:10.310 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 07:30:10.312 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 07:30:10.313 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 23:19:17 + → module: 'NewsAPIClient' +2025-10-24 07:30:10.313 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 23:19:17 + → module: 'NewsAPIClient' +2025-10-24 07:30:10.314 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.82秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 07:30:10.322 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 07:30:10.323 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:30:19.500 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:30:19 + → module: 'TaskScheduler' +2025-10-24 07:30:19.500 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:30:29.511 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:30:29 + → module: 'TaskScheduler' +2025-10-24 07:30:29.511 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:30:39.522 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:30:39 + → module: 'TaskScheduler' +2025-10-24 07:30:39.522 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:30:49.530 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:30:49 + → module: 'TaskScheduler' +2025-10-24 07:30:49.530 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:30:59.538 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:30:59 + → module: 'TaskScheduler' +2025-10-24 07:30:59.538 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:31:09.572 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:31:09 + → module: 'TaskScheduler' +2025-10-24 07:31:09.572 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:31:19.579 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:31:19 + → module: 'TaskScheduler' +2025-10-24 07:31:19.579 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:31:29.586 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:31:29 + → module: 'TaskScheduler' +2025-10-24 07:31:29.586 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:31:39.610 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:31:39 + → module: 'TaskScheduler' +2025-10-24 07:31:39.610 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:31:49.629 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:31:49 + → module: 'TaskScheduler' +2025-10-24 07:31:49.629 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:31:59.637 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:31:59 + → module: 'TaskScheduler' +2025-10-24 07:31:59.637 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:32:09.645 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:32:09 + → module: 'TaskScheduler' +2025-10-24 07:32:09.645 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:32:19.654 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:32:19 + → module: 'TaskScheduler' +2025-10-24 07:32:19.654 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:32:29.662 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:32:29 + → module: 'TaskScheduler' +2025-10-24 07:32:29.662 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:32:39.670 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:32:39 + → module: 'TaskScheduler' +2025-10-24 07:32:39.670 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:32:49.678 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:32:49 + → module: 'TaskScheduler' +2025-10-24 07:32:49.679 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:32:59.689 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:32:59 + → module: 'TaskScheduler' +2025-10-24 07:32:59.689 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:33:09.697 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:33:09 + → module: 'TaskScheduler' +2025-10-24 07:33:09.697 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:33:19.720 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:33:19 + → module: 'TaskScheduler' +2025-10-24 07:33:19.720 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:33:29.753 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:33:29 + → module: 'TaskScheduler' +2025-10-24 07:33:29.753 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:33:39.782 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:33:39 + → module: 'TaskScheduler' +2025-10-24 07:33:39.782 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:33:49.789 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:33:49 + → module: 'TaskScheduler' +2025-10-24 07:33:49.790 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:33:59.818 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:33:59 + → module: 'TaskScheduler' +2025-10-24 07:33:59.818 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:34:09.826 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:34:09 + → module: 'TaskScheduler' +2025-10-24 07:34:09.827 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:34:19.834 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:34:19 + → module: 'TaskScheduler' +2025-10-24 07:34:19.834 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:34:29.843 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:34:29 + → module: 'TaskScheduler' +2025-10-24 07:34:29.843 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:34:39.850 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:34:39 + → module: 'TaskScheduler' +2025-10-24 07:34:39.850 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:34:49.883 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:34:49 + → module: 'TaskScheduler' +2025-10-24 07:34:49.883 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:34:59.902 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:34:59 + → module: 'TaskScheduler' +2025-10-24 07:34:59.902 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:35:09.910 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:35:09 + → module: 'TaskScheduler' +2025-10-24 07:35:09.910 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:35:09.919 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:35:09.944 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 07:35:09.944 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:35:09.946 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 07:35:09.946 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 07:35:09.946 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 07:35:09.971 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 07:35:09.988 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 07:35:09.988 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 07:35:09.989 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 23:19:17 + → module: 'NewsAPIClient' +2025-10-24 07:35:09.989 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 23:19:17 + → module: 'NewsAPIClient' +2025-10-24 07:35:09.990 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 07:35:10.457 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:35:10.469 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:35:10.525 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:35:10.799 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:35:10.800 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 07:35:10.801 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.81秒 + → module: 'NewsAPIClient' +2025-10-24 07:35:10.801 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 07:35:10.802 | DEBUG | rss_subscriptions:235 - 处理条目 1: 中方:当前的加沙停火应当成为全面持久停火的基础 + → module: 'NewsAPIClient' +2025-10-24 07:35:10.802 | DEBUG | rss_subscriptions:235 - 处理条目 2: 普京警告:若“战斧”导弹袭击俄领土,俄方将强硬回应 + → module: 'NewsAPIClient' +2025-10-24 07:35:10.828 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 07:35:10.830 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 07:35:10.831 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 2 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 07:35:10.843 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 2 + → total_inserted: 2 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 07:35:10.844 | INFO | rss_subscriptions:259 - 成功写入 2/2 条记录 + → module: 'NewsAPIClient' +2025-10-24 07:35:10.844 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 07:35:10.845 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 07:35:10.845 | DEBUG | rss_subscriptions:235 - 处理条目 1: 国产创新药多项“出海”交易密集落地 + → module: 'NewsAPIClient' +2025-10-24 07:35:10.846 | DEBUG | rss_subscriptions:235 - 处理条目 2: 外资机构集体看多中国股市 + → module: 'NewsAPIClient' +2025-10-24 07:35:10.848 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 07:35:10.849 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 07:35:10.850 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 2 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 07:35:10.863 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 2 + → total_inserted: 2 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 07:35:10.863 | INFO | rss_subscriptions:259 - 成功写入 2/2 条记录 + → module: 'NewsAPIClient' +2025-10-24 07:35:10.864 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 07:35:10.864 | DEBUG | rss_subscriptions:235 - 处理条目 1: 中方:当前的加沙停火应当成为全面持久停火的基础 + → module: 'NewsAPIClient' +2025-10-24 07:35:10.864 | DEBUG | rss_subscriptions:235 - 处理条目 2: 大学生直播宿舍生活,边界在哪里 + → module: 'NewsAPIClient' +2025-10-24 07:35:10.864 | DEBUG | rss_subscriptions:235 - 处理条目 3: 普京警告:若“战斧”导弹袭击俄领土,俄方将强硬回应 + → module: 'NewsAPIClient' +2025-10-24 07:35:10.889 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 07:35:10.890 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 07:35:10.891 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 3 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 07:35:10.897 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 0 + → error_message: "Duplicate entry '中方:当前的加沙停火应当成为全面持久停火的å' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '中方:当前的加沙停火应当成为全面持久停火的基础...', '文章链接': 'http://www.chinanews.com/gj/2025/10-24/10503561.shtml...', '文章摘要': '中新社联合国10月23日电 联合国安理会23日举行中东问题公开辩论会。中国常驻联合国代表傅聪在会上发言强调,当前的加沙停火应当成为全面持久停火的基础,落实“两国方... +2025-10-24 07:35:10.909 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 2 + → error_message: "Duplicate entry '普京警告:若“战斧”导弹袭击俄领土,俄方将å' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '普京警告:若“战斧”导弹袭击俄领土,俄方将强硬回应...', '文章链接': 'http://www.chinanews.com/gj/2025/10-24/10503566.shtml...', '文章摘要': '中新网10月24日电 据俄罗斯卫星通讯社报道,当地时间23日,俄罗斯总统普京表示,若美国“战斧”巡航导弹对俄罗斯领土发动攻击,俄方将强硬回应。...', '发... +2025-10-24 07:35:10.910 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 3 + → total_inserted: 1 + → total_duplicates: 2 + → total_failed: 0 + → failed_records_count: 2 +2025-10-24 07:35:10.910 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '中方:当前的加沙停火应当成为全面持久停火的å' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 2, 'type': 'du... + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '中方:当前的加沙停火应当成为全面持久停火的å' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '中方:当前... +2025-10-24 07:35:10.911 | INFO | rss_subscriptions:259 - 成功写入 1/3 条记录 + → module: 'NewsAPIClient' +2025-10-24 07:35:10.912 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 23:34:04 + → module: 'NewsAPIClient' +2025-10-24 07:35:10.912 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 23:34:04 + → module: 'NewsAPIClient' +2025-10-24 07:35:10.913 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.97秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 07:35:10.942 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 07:35:10.943 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:35:19.947 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:35:19 + → module: 'TaskScheduler' +2025-10-24 07:35:19.947 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:35:29.980 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:35:29 + → module: 'TaskScheduler' +2025-10-24 07:35:29.981 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:35:39.992 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:35:39 + → module: 'TaskScheduler' +2025-10-24 07:35:39.993 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:35:50.015 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:35:50 + → module: 'TaskScheduler' +2025-10-24 07:35:50.015 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:36:00.027 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:36:00 + → module: 'TaskScheduler' +2025-10-24 07:36:00.027 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:36:10.055 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:36:10 + → module: 'TaskScheduler' +2025-10-24 07:36:10.055 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:36:20.065 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:36:20 + → module: 'TaskScheduler' +2025-10-24 07:36:20.065 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:36:30.082 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:36:30 + → module: 'TaskScheduler' +2025-10-24 07:36:30.082 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:36:40.090 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:36:40 + → module: 'TaskScheduler' +2025-10-24 07:36:40.091 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:36:50.102 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:36:50 + → module: 'TaskScheduler' +2025-10-24 07:36:50.102 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:37:00.110 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:37:00 + → module: 'TaskScheduler' +2025-10-24 07:37:00.111 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:37:10.119 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:37:10 + → module: 'TaskScheduler' +2025-10-24 07:37:10.119 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:37:20.127 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:37:20 + → module: 'TaskScheduler' +2025-10-24 07:37:20.127 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:37:30.147 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:37:30 + → module: 'TaskScheduler' +2025-10-24 07:37:30.147 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:37:40.171 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:37:40 + → module: 'TaskScheduler' +2025-10-24 07:37:40.171 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:37:50.190 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:37:50 + → module: 'TaskScheduler' +2025-10-24 07:37:50.190 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:38:00.216 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:38:00 + → module: 'TaskScheduler' +2025-10-24 07:38:00.216 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:38:10.247 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:38:10 + → module: 'TaskScheduler' +2025-10-24 07:38:10.247 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:38:20.259 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:38:20 + → module: 'TaskScheduler' +2025-10-24 07:38:20.259 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:38:30.266 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:38:30 + → module: 'TaskScheduler' +2025-10-24 07:38:30.266 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:38:40.277 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:38:40 + → module: 'TaskScheduler' +2025-10-24 07:38:40.277 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:38:50.285 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:38:50 + → module: 'TaskScheduler' +2025-10-24 07:38:50.285 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:39:00.292 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:39:00 + → module: 'TaskScheduler' +2025-10-24 07:39:00.292 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:39:10.299 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:39:10 + → module: 'TaskScheduler' +2025-10-24 07:39:10.299 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:39:20.307 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:39:20 + → module: 'TaskScheduler' +2025-10-24 07:39:20.307 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:39:30.317 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:39:30 + → module: 'TaskScheduler' +2025-10-24 07:39:30.317 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:39:40.326 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:39:40 + → module: 'TaskScheduler' +2025-10-24 07:39:40.326 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:39:50.332 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:39:50 + → module: 'TaskScheduler' +2025-10-24 07:39:50.333 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:40:00.343 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:40:00 + → module: 'TaskScheduler' +2025-10-24 07:40:00.343 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:40:00.367 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:40:00.398 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 07:40:00.399 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:40:00.399 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 07:40:00.399 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 07:40:00.399 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 07:40:00.402 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 07:40:00.405 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 07:40:00.405 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 07:40:00.406 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 23:34:04 + → module: 'NewsAPIClient' +2025-10-24 07:40:00.406 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 23:34:04 + → module: 'NewsAPIClient' +2025-10-24 07:40:00.407 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 07:40:00.833 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:40:00.870 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:40:00.894 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:40:01.232 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:40:01.235 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 07:40:01.235 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.83秒 + → module: 'NewsAPIClient' +2025-10-24 07:40:01.236 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 07:40:01.237 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 07:40:01.237 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 07:40:01.238 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 07:40:01.240 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 23:34:04 + → module: 'NewsAPIClient' +2025-10-24 07:40:01.240 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 23:34:04 + → module: 'NewsAPIClient' +2025-10-24 07:40:01.240 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.84秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 07:40:01.250 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 07:40:01.250 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:40:10.401 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:40:10 + → module: 'TaskScheduler' +2025-10-24 07:40:10.401 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:40:20.409 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:40:20 + → module: 'TaskScheduler' +2025-10-24 07:40:20.409 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:40:30.440 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:40:30 + → module: 'TaskScheduler' +2025-10-24 07:40:30.440 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:40:40.463 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:40:40 + → module: 'TaskScheduler' +2025-10-24 07:40:40.464 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:40:50.472 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:40:50 + → module: 'TaskScheduler' +2025-10-24 07:40:50.472 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:41:00.480 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:41:00 + → module: 'TaskScheduler' +2025-10-24 07:41:00.481 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:41:10.488 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:41:10 + → module: 'TaskScheduler' +2025-10-24 07:41:10.488 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:41:20.498 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:41:20 + → module: 'TaskScheduler' +2025-10-24 07:41:20.498 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:41:30.507 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:41:30 + → module: 'TaskScheduler' +2025-10-24 07:41:30.507 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:41:40.535 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:41:40 + → module: 'TaskScheduler' +2025-10-24 07:41:40.535 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:41:50.545 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:41:50 + → module: 'TaskScheduler' +2025-10-24 07:41:50.545 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:42:00.552 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:42:00 + → module: 'TaskScheduler' +2025-10-24 07:42:00.552 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:42:10.582 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:42:10 + → module: 'TaskScheduler' +2025-10-24 07:42:10.583 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:42:20.605 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:42:20 + → module: 'TaskScheduler' +2025-10-24 07:42:20.605 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:42:30.614 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:42:30 + → module: 'TaskScheduler' +2025-10-24 07:42:30.614 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:42:40.624 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:42:40 + → module: 'TaskScheduler' +2025-10-24 07:42:40.625 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:42:50.650 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:42:50 + → module: 'TaskScheduler' +2025-10-24 07:42:50.650 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:43:00.658 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:43:00 + → module: 'TaskScheduler' +2025-10-24 07:43:00.658 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:43:10.669 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:43:10 + → module: 'TaskScheduler' +2025-10-24 07:43:10.669 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:43:20.679 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:43:20 + → module: 'TaskScheduler' +2025-10-24 07:43:20.679 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:43:30.700 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:43:30 + → module: 'TaskScheduler' +2025-10-24 07:43:30.700 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:43:40.727 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:43:40 + → module: 'TaskScheduler' +2025-10-24 07:43:40.728 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:43:50.737 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:43:50 + → module: 'TaskScheduler' +2025-10-24 07:43:50.737 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:44:00.746 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:44:00 + → module: 'TaskScheduler' +2025-10-24 07:44:00.746 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:44:10.757 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:44:10 + → module: 'TaskScheduler' +2025-10-24 07:44:10.757 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:44:20.788 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:44:20 + → module: 'TaskScheduler' +2025-10-24 07:44:20.788 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:44:30.797 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:44:30 + → module: 'TaskScheduler' +2025-10-24 07:44:30.797 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:44:40.829 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:44:40 + → module: 'TaskScheduler' +2025-10-24 07:44:40.829 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:44:50.852 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:44:50 + → module: 'TaskScheduler' +2025-10-24 07:44:50.852 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:45:00.861 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:45:00 + → module: 'TaskScheduler' +2025-10-24 07:45:00.862 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:45:00.872 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:45:00.905 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 07:45:00.905 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:45:00.906 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 07:45:00.906 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 07:45:00.906 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 07:45:00.910 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 07:45:00.912 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 07:45:00.913 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 07:45:00.914 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 23:34:04 + → module: 'NewsAPIClient' +2025-10-24 07:45:00.914 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 23:34:04 + → module: 'NewsAPIClient' +2025-10-24 07:45:00.915 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 07:45:01.372 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:45:01.400 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:45:01.545 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:45:01.716 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:45:01.718 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 07:45:01.719 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.80秒 + → module: 'NewsAPIClient' +2025-10-24 07:45:01.719 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 07:45:01.720 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 07:45:01.721 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 07:45:01.722 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 07:45:01.723 | DEBUG | rss_subscriptions:235 - 处理条目 1: 气温骤降警惕卒中类疾病 记住“120”口诀帮你判断识别 + → module: 'NewsAPIClient' +2025-10-24 07:45:01.723 | DEBUG | rss_subscriptions:235 - 处理条目 2: 我国成功发射通信技术试验卫星二十号 + → module: 'NewsAPIClient' +2025-10-24 07:45:01.725 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 07:45:01.727 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 07:45:01.729 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 2 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 07:45:01.743 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 2 + → total_inserted: 2 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 07:45:01.744 | INFO | rss_subscriptions:259 - 成功写入 2/2 条记录 + → module: 'NewsAPIClient' +2025-10-24 07:45:01.746 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 23:40:32 + → module: 'NewsAPIClient' +2025-10-24 07:45:01.746 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 23:40:32 + → module: 'NewsAPIClient' +2025-10-24 07:45:01.747 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.84秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 07:45:01.756 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 07:45:01.757 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:45:10.907 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:45:10 + → module: 'TaskScheduler' +2025-10-24 07:45:10.907 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:45:20.915 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:45:20 + → module: 'TaskScheduler' +2025-10-24 07:45:20.915 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:45:30.924 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:45:30 + → module: 'TaskScheduler' +2025-10-24 07:45:30.924 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:45:40.931 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:45:40 + → module: 'TaskScheduler' +2025-10-24 07:45:40.931 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:45:50.939 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:45:50 + → module: 'TaskScheduler' +2025-10-24 07:45:50.939 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:46:00.947 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:46:00 + → module: 'TaskScheduler' +2025-10-24 07:46:00.947 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:46:10.958 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:46:10 + → module: 'TaskScheduler' +2025-10-24 07:46:10.959 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:46:20.966 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:46:20 + → module: 'TaskScheduler' +2025-10-24 07:46:20.966 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:46:30.996 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:46:30 + → module: 'TaskScheduler' +2025-10-24 07:46:30.996 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:46:41.003 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:46:41 + → module: 'TaskScheduler' +2025-10-24 07:46:41.003 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:46:51.012 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:46:51 + → module: 'TaskScheduler' +2025-10-24 07:46:51.012 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:47:01.019 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:47:01 + → module: 'TaskScheduler' +2025-10-24 07:47:01.020 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:47:11.033 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:47:11 + → module: 'TaskScheduler' +2025-10-24 07:47:11.033 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:47:21.041 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:47:21 + → module: 'TaskScheduler' +2025-10-24 07:47:21.041 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:47:31.048 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:47:31 + → module: 'TaskScheduler' +2025-10-24 07:47:31.048 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:47:41.058 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:47:41 + → module: 'TaskScheduler' +2025-10-24 07:47:41.058 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:47:51.068 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:47:51 + → module: 'TaskScheduler' +2025-10-24 07:47:51.068 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:48:01.076 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:48:01 + → module: 'TaskScheduler' +2025-10-24 07:48:01.076 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:48:11.094 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:48:11 + → module: 'TaskScheduler' +2025-10-24 07:48:11.094 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:48:21.123 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:48:21 + → module: 'TaskScheduler' +2025-10-24 07:48:21.123 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:48:31.131 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:48:31 + → module: 'TaskScheduler' +2025-10-24 07:48:31.131 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:48:41.153 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:48:41 + → module: 'TaskScheduler' +2025-10-24 07:48:41.153 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:48:51.161 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:48:51 + → module: 'TaskScheduler' +2025-10-24 07:48:51.161 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:49:01.174 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:49:01 + → module: 'TaskScheduler' +2025-10-24 07:49:01.174 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:49:11.182 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:49:11 + → module: 'TaskScheduler' +2025-10-24 07:49:11.182 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:49:21.191 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:49:21 + → module: 'TaskScheduler' +2025-10-24 07:49:21.191 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:49:31.224 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:49:31 + → module: 'TaskScheduler' +2025-10-24 07:49:31.224 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:49:41.233 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:49:41 + → module: 'TaskScheduler' +2025-10-24 07:49:41.233 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:49:51.246 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:49:51 + → module: 'TaskScheduler' +2025-10-24 07:49:51.246 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:50:01.253 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:50:01 + → module: 'TaskScheduler' +2025-10-24 07:50:01.253 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:50:01.267 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:50:01.290 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 07:50:01.290 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:50:01.291 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 07:50:01.291 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 07:50:01.291 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 07:50:01.320 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 07:50:01.334 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 07:50:01.334 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 07:50:01.335 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 23:40:32 + → module: 'NewsAPIClient' +2025-10-24 07:50:01.335 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 23:40:32 + → module: 'NewsAPIClient' +2025-10-24 07:50:01.337 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 07:50:01.782 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:50:01.799 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:50:01.852 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:50:02.130 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:50:02.132 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 07:50:02.133 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.80秒 + → module: 'NewsAPIClient' +2025-10-24 07:50:02.133 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 07:50:02.134 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 07:50:02.135 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 07:50:02.136 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 07:50:02.137 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 23:40:32 + → module: 'NewsAPIClient' +2025-10-24 07:50:02.137 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 23:40:32 + → module: 'NewsAPIClient' +2025-10-24 07:50:02.139 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.85秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 07:50:02.158 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 07:50:02.159 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:50:11.292 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:50:11 + → module: 'TaskScheduler' +2025-10-24 07:50:11.292 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:50:21.323 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:50:21 + → module: 'TaskScheduler' +2025-10-24 07:50:21.323 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:50:31.352 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:50:31 + → module: 'TaskScheduler' +2025-10-24 07:50:31.353 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:50:41.379 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:50:41 + → module: 'TaskScheduler' +2025-10-24 07:50:41.379 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:50:51.400 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:50:51 + → module: 'TaskScheduler' +2025-10-24 07:50:51.400 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:51:01.408 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:51:01 + → module: 'TaskScheduler' +2025-10-24 07:51:01.408 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:51:11.417 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:51:11 + → module: 'TaskScheduler' +2025-10-24 07:51:11.418 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:51:21.428 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:51:21 + → module: 'TaskScheduler' +2025-10-24 07:51:21.428 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:51:31.450 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:51:31 + → module: 'TaskScheduler' +2025-10-24 07:51:31.450 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:51:41.471 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:51:41 + → module: 'TaskScheduler' +2025-10-24 07:51:41.471 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:51:51.479 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:51:51 + → module: 'TaskScheduler' +2025-10-24 07:51:51.479 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:52:01.487 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:52:01 + → module: 'TaskScheduler' +2025-10-24 07:52:01.487 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:52:11.506 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:52:11 + → module: 'TaskScheduler' +2025-10-24 07:52:11.506 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:52:21.517 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:52:21 + → module: 'TaskScheduler' +2025-10-24 07:52:21.518 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:52:31.525 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:52:31 + → module: 'TaskScheduler' +2025-10-24 07:52:31.525 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:52:41.545 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:52:41 + → module: 'TaskScheduler' +2025-10-24 07:52:41.545 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:52:51.566 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:52:51 + → module: 'TaskScheduler' +2025-10-24 07:52:51.566 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:53:01.573 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:53:01 + → module: 'TaskScheduler' +2025-10-24 07:53:01.573 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:53:11.582 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:53:11 + → module: 'TaskScheduler' +2025-10-24 07:53:11.582 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:53:21.589 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:53:21 + → module: 'TaskScheduler' +2025-10-24 07:53:21.589 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:53:31.598 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:53:31 + → module: 'TaskScheduler' +2025-10-24 07:53:31.598 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:53:41.605 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:53:41 + → module: 'TaskScheduler' +2025-10-24 07:53:41.605 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:53:51.627 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:53:51 + → module: 'TaskScheduler' +2025-10-24 07:53:51.627 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:54:01.636 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:54:01 + → module: 'TaskScheduler' +2025-10-24 07:54:01.636 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:54:11.647 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:54:11 + → module: 'TaskScheduler' +2025-10-24 07:54:11.647 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:54:21.655 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:54:21 + → module: 'TaskScheduler' +2025-10-24 07:54:21.655 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:54:31.674 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:54:31 + → module: 'TaskScheduler' +2025-10-24 07:54:31.675 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:54:41.682 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:54:41 + → module: 'TaskScheduler' +2025-10-24 07:54:41.682 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:54:51.691 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:54:51 + → module: 'TaskScheduler' +2025-10-24 07:54:51.691 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:55:01.717 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:55:01 + → module: 'TaskScheduler' +2025-10-24 07:55:01.717 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:55:01.725 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:55:01.747 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 07:55:01.748 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:55:01.748 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 07:55:01.748 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 07:55:01.748 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 07:55:01.753 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 07:55:01.757 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 07:55:01.758 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 07:55:01.759 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 23:40:32 + → module: 'NewsAPIClient' +2025-10-24 07:55:01.759 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 23:40:32 + → module: 'NewsAPIClient' +2025-10-24 07:55:01.759 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 07:55:02.234 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:55:02.250 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:55:02.260 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:55:02.668 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 07:55:02.670 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 07:55:02.671 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.91秒 + → module: 'NewsAPIClient' +2025-10-24 07:55:02.672 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 07:55:02.674 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 07:55:02.675 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 07:55:02.678 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 07:55:02.680 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 23:40:32 + → module: 'NewsAPIClient' +2025-10-24 07:55:02.680 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 23:40:32 + → module: 'NewsAPIClient' +2025-10-24 07:55:02.681 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.93秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 07:55:02.689 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 07:55:02.690 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 07:55:11.750 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:55:11 + → module: 'TaskScheduler' +2025-10-24 07:55:11.750 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:55:21.758 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:55:21 + → module: 'TaskScheduler' +2025-10-24 07:55:21.758 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:55:31.784 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:55:31 + → module: 'TaskScheduler' +2025-10-24 07:55:31.784 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:55:41.792 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:55:41 + → module: 'TaskScheduler' +2025-10-24 07:55:41.792 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:55:51.802 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:55:51 + → module: 'TaskScheduler' +2025-10-24 07:55:51.802 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:56:01.811 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:56:01 + → module: 'TaskScheduler' +2025-10-24 07:56:01.811 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:56:11.820 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:56:11 + → module: 'TaskScheduler' +2025-10-24 07:56:11.820 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:56:21.826 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:56:21 + → module: 'TaskScheduler' +2025-10-24 07:56:21.826 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:56:31.836 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:56:31 + → module: 'TaskScheduler' +2025-10-24 07:56:31.836 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:56:41.847 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:56:41 + → module: 'TaskScheduler' +2025-10-24 07:56:41.847 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:56:51.858 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:56:51 + → module: 'TaskScheduler' +2025-10-24 07:56:51.858 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:57:01.887 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:57:01 + → module: 'TaskScheduler' +2025-10-24 07:57:01.887 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:57:11.896 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:57:11 + → module: 'TaskScheduler' +2025-10-24 07:57:11.896 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:57:21.903 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:57:21 + → module: 'TaskScheduler' +2025-10-24 07:57:21.903 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:57:31.912 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:57:31 + → module: 'TaskScheduler' +2025-10-24 07:57:31.912 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:57:41.924 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:57:41 + → module: 'TaskScheduler' +2025-10-24 07:57:41.924 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:57:51.933 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:57:51 + → module: 'TaskScheduler' +2025-10-24 07:57:51.933 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:58:01.954 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:58:01 + → module: 'TaskScheduler' +2025-10-24 07:58:01.954 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:58:11.979 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:58:11 + → module: 'TaskScheduler' +2025-10-24 07:58:11.979 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:58:21.998 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:58:21 + → module: 'TaskScheduler' +2025-10-24 07:58:21.998 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:58:32.028 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:58:32 + → module: 'TaskScheduler' +2025-10-24 07:58:32.028 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:58:42.048 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:58:42 + → module: 'TaskScheduler' +2025-10-24 07:58:42.048 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:58:52.080 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:58:52 + → module: 'TaskScheduler' +2025-10-24 07:58:52.080 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:59:02.106 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:59:02 + → module: 'TaskScheduler' +2025-10-24 07:59:02.106 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:59:12.115 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:59:12 + → module: 'TaskScheduler' +2025-10-24 07:59:12.116 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:59:22.124 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:59:22 + → module: 'TaskScheduler' +2025-10-24 07:59:22.124 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:59:32.143 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:59:32 + → module: 'TaskScheduler' +2025-10-24 07:59:32.144 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:59:42.152 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:59:42 + → module: 'TaskScheduler' +2025-10-24 07:59:42.152 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 07:59:52.159 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 07:59:52 + → module: 'TaskScheduler' +2025-10-24 07:59:52.160 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:00:02.167 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:00:02 + → module: 'TaskScheduler' +2025-10-24 08:00:02.167 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:00:02.176 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:00:02.176 | INFO | task_scheduler:165 - 开始执行任务: RSS基于规则数据处理 + → module: 'TaskScheduler' + → task_id: 2 + → task_name: 'RSS基于规则数据处理' +2025-10-24 08:00:02.211 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 08:00:02.212 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:00:02.212 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 08:00:02.213 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 08:00:02.214 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 08:00:02.214 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 2 + → task_name: 'RSS基于规则数据处理' +2025-10-24 08:00:02.214 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'processors.processor_rss_data' + → task_id: 2 +2025-10-24 08:00:02.215 | INFO | processor_rss_data:65 - RSS数据处理器初始化完成 + → module: 'RSSDataProcessor' +2025-10-24 08:00:02.215 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 2 + → 成功: 2 + → 失败: 0 +2025-10-24 08:00:02.216 | INFO | processor_rss_data:335 - 开始处理RSS数据... + → module: 'RSSDataProcessor' +2025-10-24 08:00:02.217 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT id, 文章标题, 文章摘要, 发布时间, 来源URL, 文章链接\n FROM collector_rss_subscriptions\n WHERE 是否已处理 = 0\n ORDER BY 发布时间 DESC\n LIMIT %s\n ' +2025-10-24 08:00:02.218 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 08:00:02.221 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 08:00:02.221 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 08:00:02.222 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 23:40:32 + → module: 'NewsAPIClient' +2025-10-24 08:00:02.222 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 23:40:32 + → module: 'NewsAPIClient' +2025-10-24 08:00:02.222 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 08:00:02.246 | INFO | processor_rss_data:107 - 成功加载 117 条未处理的RSS数据 + → module: 'RSSDataProcessor' +2025-10-24 08:00:02.248 | INFO | processor_rss_data:146 - 成功加载停用词表,共 98 个词 + → module: 'RSSDataProcessor' +2025-10-24 08:00:02.248 | INFO | processor_rss_data:82 - 成功加载汽车后市场关键词,共 37 个 + → module: 'RSSDataProcessor' +2025-10-24 08:00:03.173 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:00:03.261 | INFO | processor_rss_data:235 - 数据处理完成,共处理 117 条记录 + → module: 'RSSDataProcessor' +2025-10-24 08:00:03.264 | INFO | processor_rss_data:246 - 过滤出 10 条汽车后市场相关新闻 + → module: 'RSSDataProcessor' +2025-10-24 08:00:03.277 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:00:03.298 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:00:03.303 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 08:00:03.303 | DEBUG | mysql_agent:640 - 检查表是否存在 + → module: 'MySQLAgent(Windows)' + → 表: 'processed_rss_data' + → 存在: True +2025-10-24 08:00:03.306 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 processed_rss_data + → module: 'MySQLAgent(Windows)' +2025-10-24 08:00:03.307 | DEBUG | mysql_agent:182 - 表 processed_rss_data 包含以下列:['id', '文章标题', '文章摘要', '发布时间', '来源URL', '文章链接', '分词结果', '相关度分数', '是否汽车相关', '处理时间', '创建时间', '更新时间'] + → module: 'MySQLAgent(Windows)' +2025-10-24 08:00:03.309 | DEBUG | mysql_agent:208 - 表 processed_rss_data 的过滤后DataFrame:共 10 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 08:00:03.381 | INFO | mysql_agent:294 - 表 processed_rss_data 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 10 + → total_inserted: 10 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 08:00:03.382 | INFO | processor_rss_data:283 - 成功保存 10 条处理结果到数据库 + → module: 'RSSDataProcessor' +2025-10-24 08:00:03.412 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 117 +2025-10-24 08:00:03.412 | INFO | processor_rss_data:129 - 成功标记 117 条数据为已处理 + → module: 'RSSDataProcessor' +2025-10-24 08:00:03.413 | INFO | processor_rss_data:372 - RSS数据处理完成 + → module: 'RSSDataProcessor' + → total_articles: 117 + → filtered_articles: 10 + → filter_rate: 0.08547008547008547 + → processing_time: '2025-10-24 08:00:03' + → save_success: True + → mark_success: True +2025-10-24 08:00:03.414 | INFO | task_scheduler:289 - 任务执行完成,耗时: 1.20秒 + → module: 'processors.processor_rss_data' + → task_id: 2 +2025-10-24 08:00:03.433 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 08:00:03.433 | INFO | task_scheduler:230 - 任务执行成功: RSS基于规则数据处理 + → module: 'TaskScheduler' + → task_id: 2 + → task_name: 'RSS基于规则数据处理' +2025-10-24 08:00:03.664 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:00:03.666 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 08:00:03.667 | INFO | rss_subscriptions:305 - 获取完成,耗时: 1.44秒 + → module: 'NewsAPIClient' +2025-10-24 08:00:03.667 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 08:00:03.668 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 08:00:03.669 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 08:00:03.670 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 08:00:03.670 | DEBUG | rss_subscriptions:235 - 处理条目 1: 美国白宫东翼被彻底拆除 + → module: 'NewsAPIClient' +2025-10-24 08:00:03.671 | DEBUG | rss_subscriptions:235 - 处理条目 2: 今明天北京有小雨山区或现雨夹雪 早晚气温较低注意保暖 + → module: 'NewsAPIClient' +2025-10-24 08:00:03.693 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 08:00:03.696 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 08:00:03.697 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 2 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 08:00:03.709 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 2 + → total_inserted: 2 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 08:00:03.710 | INFO | rss_subscriptions:259 - 成功写入 2/2 条记录 + → module: 'NewsAPIClient' +2025-10-24 08:00:03.711 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-23 23:58:46 + → module: 'NewsAPIClient' +2025-10-24 08:00:03.711 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-23 23:58:46 + → module: 'NewsAPIClient' +2025-10-24 08:00:03.711 | INFO | task_scheduler:289 - 任务执行完成,耗时: 1.50秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 08:00:03.744 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 08:00:03.745 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:00:12.217 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:00:12 + → module: 'TaskScheduler' +2025-10-24 08:00:12.217 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:00:22.226 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:00:22 + → module: 'TaskScheduler' +2025-10-24 08:00:22.226 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:00:32.249 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:00:32 + → module: 'TaskScheduler' +2025-10-24 08:00:32.249 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:00:42.259 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:00:42 + → module: 'TaskScheduler' +2025-10-24 08:00:42.259 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:00:52.267 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:00:52 + → module: 'TaskScheduler' +2025-10-24 08:00:52.268 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:01:02.277 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:01:02 + → module: 'TaskScheduler' +2025-10-24 08:01:02.278 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:01:12.288 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:01:12 + → module: 'TaskScheduler' +2025-10-24 08:01:12.288 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:01:22.296 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:01:22 + → module: 'TaskScheduler' +2025-10-24 08:01:22.296 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:01:32.323 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:01:32 + → module: 'TaskScheduler' +2025-10-24 08:01:32.323 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:01:42.352 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:01:42 + → module: 'TaskScheduler' +2025-10-24 08:01:42.352 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:01:52.375 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:01:52 + → module: 'TaskScheduler' +2025-10-24 08:01:52.375 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:02:02.385 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:02:02 + → module: 'TaskScheduler' +2025-10-24 08:02:02.385 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:02:12.393 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:02:12 + → module: 'TaskScheduler' +2025-10-24 08:02:12.393 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:02:22.404 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:02:22 + → module: 'TaskScheduler' +2025-10-24 08:02:22.404 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:02:32.412 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:02:32 + → module: 'TaskScheduler' +2025-10-24 08:02:32.412 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:02:42.419 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:02:42 + → module: 'TaskScheduler' +2025-10-24 08:02:42.420 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:02:52.427 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:02:52 + → module: 'TaskScheduler' +2025-10-24 08:02:52.428 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:03:02.437 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:03:02 + → module: 'TaskScheduler' +2025-10-24 08:03:02.437 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:03:12.445 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:03:12 + → module: 'TaskScheduler' +2025-10-24 08:03:12.445 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:03:22.452 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:03:22 + → module: 'TaskScheduler' +2025-10-24 08:03:22.452 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:03:32.460 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:03:32 + → module: 'TaskScheduler' +2025-10-24 08:03:32.460 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:03:42.467 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:03:42 + → module: 'TaskScheduler' +2025-10-24 08:03:42.468 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:03:52.486 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:03:52 + → module: 'TaskScheduler' +2025-10-24 08:03:52.486 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:04:02.493 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:04:02 + → module: 'TaskScheduler' +2025-10-24 08:04:02.493 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:04:12.502 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:04:12 + → module: 'TaskScheduler' +2025-10-24 08:04:12.502 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:04:22.510 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:04:22 + → module: 'TaskScheduler' +2025-10-24 08:04:22.510 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:04:32.517 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:04:32 + → module: 'TaskScheduler' +2025-10-24 08:04:32.518 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:04:42.526 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:04:42 + → module: 'TaskScheduler' +2025-10-24 08:04:42.527 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:04:52.539 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:04:52 + → module: 'TaskScheduler' +2025-10-24 08:04:52.539 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:05:02.547 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:05:02 + → module: 'TaskScheduler' +2025-10-24 08:05:02.547 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:05:02.558 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:05:02.569 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 08:05:02.570 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:05:02.571 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 08:05:02.571 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 08:05:02.571 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 08:05:02.577 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 08:05:02.582 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 08:05:02.584 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 08:05:02.584 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-23 23:58:46 + → module: 'NewsAPIClient' +2025-10-24 08:05:02.585 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-23 23:58:46 + → module: 'NewsAPIClient' +2025-10-24 08:05:02.585 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 08:05:03.032 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:05:03.056 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:05:03.104 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:05:03.391 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:05:03.392 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 08:05:03.393 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.81秒 + → module: 'NewsAPIClient' +2025-10-24 08:05:03.393 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 08:05:03.395 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 08:05:03.397 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 08:05:03.398 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 08:05:03.399 | DEBUG | rss_subscriptions:235 - 处理条目 1: 中共中央今天上午10时将举行新闻发布会,介绍和解读党的二十届四中全会精神 + → module: 'NewsAPIClient' +2025-10-24 08:05:03.403 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 08:05:03.405 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 08:05:03.406 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 08:05:03.431 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 08:05:03.432 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 08:05:03.432 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 00:01:06 + → module: 'NewsAPIClient' +2025-10-24 08:05:03.433 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 00:01:06 + → module: 'NewsAPIClient' +2025-10-24 08:05:03.433 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.86秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 08:05:03.440 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 08:05:03.440 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:05:12.573 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:05:12 + → module: 'TaskScheduler' +2025-10-24 08:05:12.573 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:05:22.582 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:05:22 + → module: 'TaskScheduler' +2025-10-24 08:05:22.582 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:05:32.606 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:05:32 + → module: 'TaskScheduler' +2025-10-24 08:05:32.606 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:05:42.614 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:05:42 + → module: 'TaskScheduler' +2025-10-24 08:05:42.614 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:05:52.621 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:05:52 + → module: 'TaskScheduler' +2025-10-24 08:05:52.621 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:06:02.629 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:06:02 + → module: 'TaskScheduler' +2025-10-24 08:06:02.629 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:06:12.637 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:06:12 + → module: 'TaskScheduler' +2025-10-24 08:06:12.638 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:06:22.646 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:06:22 + → module: 'TaskScheduler' +2025-10-24 08:06:22.646 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:06:32.654 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:06:32 + → module: 'TaskScheduler' +2025-10-24 08:06:32.654 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:06:42.686 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:06:42 + → module: 'TaskScheduler' +2025-10-24 08:06:42.687 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:06:52.696 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:06:52 + → module: 'TaskScheduler' +2025-10-24 08:06:52.696 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:07:02.704 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:07:02 + → module: 'TaskScheduler' +2025-10-24 08:07:02.705 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:07:12.713 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:07:12 + → module: 'TaskScheduler' +2025-10-24 08:07:12.713 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:07:22.722 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:07:22 + → module: 'TaskScheduler' +2025-10-24 08:07:22.723 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:07:32.741 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:07:32 + → module: 'TaskScheduler' +2025-10-24 08:07:32.742 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:07:42.753 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:07:42 + → module: 'TaskScheduler' +2025-10-24 08:07:42.753 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:07:52.760 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:07:52 + → module: 'TaskScheduler' +2025-10-24 08:07:52.760 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:08:02.767 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:08:02 + → module: 'TaskScheduler' +2025-10-24 08:08:02.767 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:08:12.776 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:08:12 + → module: 'TaskScheduler' +2025-10-24 08:08:12.777 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:08:22.783 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:08:22 + → module: 'TaskScheduler' +2025-10-24 08:08:22.784 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:08:32.793 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:08:32 + → module: 'TaskScheduler' +2025-10-24 08:08:32.793 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:08:42.801 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:08:42 + → module: 'TaskScheduler' +2025-10-24 08:08:42.801 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:08:52.832 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:08:52 + → module: 'TaskScheduler' +2025-10-24 08:08:52.833 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:09:02.845 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:09:02 + → module: 'TaskScheduler' +2025-10-24 08:09:02.845 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:09:02.852 | INFO | main:87 - 小时任务统计 + → module: 'Main' + → 总任务数: 13 + → 成功: 13 + → 失败: 0 +2025-10-24 08:09:12.853 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:09:12 + → module: 'TaskScheduler' +2025-10-24 08:09:12.853 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:09:22.863 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:09:22 + → module: 'TaskScheduler' +2025-10-24 08:09:22.863 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:09:32.889 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:09:32 + → module: 'TaskScheduler' +2025-10-24 08:09:32.890 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:09:42.900 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:09:42 + → module: 'TaskScheduler' +2025-10-24 08:09:42.900 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:09:52.932 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:09:52 + → module: 'TaskScheduler' +2025-10-24 08:09:52.932 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:10:02.940 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:10:02 + → module: 'TaskScheduler' +2025-10-24 08:10:02.940 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:10:02.976 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:10:02.998 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 08:10:03.000 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:10:03.000 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 08:10:03.000 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 08:10:03.000 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 08:10:03.005 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 08:10:03.029 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 08:10:03.030 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 08:10:03.031 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 00:01:06 + → module: 'NewsAPIClient' +2025-10-24 08:10:03.032 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 00:01:06 + → module: 'NewsAPIClient' +2025-10-24 08:10:03.032 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 08:10:03.427 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:10:03.438 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:10:03.474 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:10:03.831 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:10:03.834 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 08:10:03.834 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.80秒 + → module: 'NewsAPIClient' +2025-10-24 08:10:03.835 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 08:10:03.837 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 08:10:03.839 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 08:10:03.840 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 08:10:03.842 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 00:01:06 + → module: 'NewsAPIClient' +2025-10-24 08:10:03.842 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 00:01:06 + → module: 'NewsAPIClient' +2025-10-24 08:10:03.842 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.84秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 08:10:03.862 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 08:10:03.863 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:10:13.002 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:10:13 + → module: 'TaskScheduler' +2025-10-24 08:10:13.002 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:10:23.010 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:10:23 + → module: 'TaskScheduler' +2025-10-24 08:10:23.010 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:10:33.018 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:10:33 + → module: 'TaskScheduler' +2025-10-24 08:10:33.018 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:10:43.025 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:10:43 + → module: 'TaskScheduler' +2025-10-24 08:10:43.025 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:10:53.044 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:10:53 + → module: 'TaskScheduler' +2025-10-24 08:10:53.044 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:11:03.053 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:11:03 + → module: 'TaskScheduler' +2025-10-24 08:11:03.054 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:11:13.061 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:11:13 + → module: 'TaskScheduler' +2025-10-24 08:11:13.061 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:11:23.085 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:11:23 + → module: 'TaskScheduler' +2025-10-24 08:11:23.086 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:11:33.094 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:11:33 + → module: 'TaskScheduler' +2025-10-24 08:11:33.094 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:11:43.124 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:11:43 + → module: 'TaskScheduler' +2025-10-24 08:11:43.124 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:11:53.135 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:11:53 + → module: 'TaskScheduler' +2025-10-24 08:11:53.135 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:12:03.143 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:12:03 + → module: 'TaskScheduler' +2025-10-24 08:12:03.143 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:12:13.150 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:12:13 + → module: 'TaskScheduler' +2025-10-24 08:12:13.150 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:12:23.158 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:12:23 + → module: 'TaskScheduler' +2025-10-24 08:12:23.158 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:12:33.184 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:12:33 + → module: 'TaskScheduler' +2025-10-24 08:12:33.184 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:12:43.197 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:12:43 + → module: 'TaskScheduler' +2025-10-24 08:12:43.197 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:12:53.204 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:12:53 + → module: 'TaskScheduler' +2025-10-24 08:12:53.204 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:13:03.212 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:13:03 + → module: 'TaskScheduler' +2025-10-24 08:13:03.212 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:13:13.220 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:13:13 + → module: 'TaskScheduler' +2025-10-24 08:13:13.220 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:13:23.253 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:13:23 + → module: 'TaskScheduler' +2025-10-24 08:13:23.253 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:13:33.261 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:13:33 + → module: 'TaskScheduler' +2025-10-24 08:13:33.261 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:13:43.269 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:13:43 + → module: 'TaskScheduler' +2025-10-24 08:13:43.269 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:13:53.293 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:13:53 + → module: 'TaskScheduler' +2025-10-24 08:13:53.293 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:14:03.317 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:14:03 + → module: 'TaskScheduler' +2025-10-24 08:14:03.317 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:14:13.325 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:14:13 + → module: 'TaskScheduler' +2025-10-24 08:14:13.325 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:14:23.337 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:14:23 + → module: 'TaskScheduler' +2025-10-24 08:14:23.337 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:14:33.349 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:14:33 + → module: 'TaskScheduler' +2025-10-24 08:14:33.349 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:14:43.356 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:14:43 + → module: 'TaskScheduler' +2025-10-24 08:14:43.356 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:14:53.389 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:14:53 + → module: 'TaskScheduler' +2025-10-24 08:14:53.389 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:15:03.401 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:15:03 + → module: 'TaskScheduler' +2025-10-24 08:15:03.402 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:15:03.408 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:15:03.418 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 08:15:03.418 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:15:03.418 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 08:15:03.419 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 08:15:03.419 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 08:15:03.433 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 08:15:03.449 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 08:15:03.450 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 08:15:03.450 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 00:01:06 + → module: 'NewsAPIClient' +2025-10-24 08:15:03.450 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 00:01:06 + → module: 'NewsAPIClient' +2025-10-24 08:15:03.451 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 08:15:03.915 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:15:03.940 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:15:03.953 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:15:04.318 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:15:04.320 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 08:15:04.320 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.87秒 + → module: 'NewsAPIClient' +2025-10-24 08:15:04.320 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 08:15:04.321 | DEBUG | rss_subscriptions:235 - 处理条目 1: 美国战略轰炸机抵近委内瑞拉 + → module: 'NewsAPIClient' +2025-10-24 08:15:04.335 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 08:15:04.337 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 08:15:04.338 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 08:15:04.345 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 08:15:04.346 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 08:15:04.346 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 08:15:04.348 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 08:15:04.349 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 08:15:04.349 | DEBUG | rss_subscriptions:235 - 处理条目 1: 美国战略轰炸机抵近委内瑞拉 + → module: 'NewsAPIClient' +2025-10-24 08:15:04.352 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 08:15:04.354 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 08:15:04.354 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 08:15:04.359 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 0 + → error_message: "Duplicate entry '美国战略轰炸机抵近委内瑞拉-2025-10-24 00:07:02' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '美国战略轰炸机抵近委内瑞拉...', '文章链接': 'http://www.chinanews.com/gj/2025/10-24/10503578.shtml...', '文章摘要': '中新网10月24日电 据美国全国广播公司(NBC)报道,当地时间23日,飞行追踪数据显示,两架美军B-1B战略轰炸机从美国起飞,飞到距离委内瑞拉海岸约50英里的地方。...', '发... +2025-10-24 08:15:04.360 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 0 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-24 08:15:04.360 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '美国战略轰炸机抵近委内瑞拉-2025-10-24 00:07:02' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '美国战略轰炸机抵近委内瑞拉-2025-10-24 00:07:02' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章... +2025-10-24 08:15:04.361 | INFO | rss_subscriptions:259 - 成功写入 0/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 08:15:04.361 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 00:07:02 + → module: 'NewsAPIClient' +2025-10-24 08:15:04.361 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 00:07:02 + → module: 'NewsAPIClient' +2025-10-24 08:15:04.363 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.95秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 08:15:04.371 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 08:15:04.371 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:15:13.420 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:15:13 + → module: 'TaskScheduler' +2025-10-24 08:15:13.420 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:15:23.428 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:15:23 + → module: 'TaskScheduler' +2025-10-24 08:15:23.428 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:15:33.436 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:15:33 + → module: 'TaskScheduler' +2025-10-24 08:15:33.436 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:15:43.444 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:15:43 + → module: 'TaskScheduler' +2025-10-24 08:15:43.444 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:15:53.472 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:15:53 + → module: 'TaskScheduler' +2025-10-24 08:15:53.472 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:16:03.480 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:16:03 + → module: 'TaskScheduler' +2025-10-24 08:16:03.480 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:16:13.504 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:16:13 + → module: 'TaskScheduler' +2025-10-24 08:16:13.504 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:16:23.536 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:16:23 + → module: 'TaskScheduler' +2025-10-24 08:16:23.536 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:16:33.545 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:16:33 + → module: 'TaskScheduler' +2025-10-24 08:16:33.545 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:16:43.553 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:16:43 + → module: 'TaskScheduler' +2025-10-24 08:16:43.553 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:16:53.563 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:16:53 + → module: 'TaskScheduler' +2025-10-24 08:16:53.563 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:17:03.571 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:17:03 + → module: 'TaskScheduler' +2025-10-24 08:17:03.571 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:17:13.603 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:17:13 + → module: 'TaskScheduler' +2025-10-24 08:17:13.603 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:17:23.631 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:17:23 + → module: 'TaskScheduler' +2025-10-24 08:17:23.631 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:17:33.660 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:17:33 + → module: 'TaskScheduler' +2025-10-24 08:17:33.660 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:17:43.668 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:17:43 + → module: 'TaskScheduler' +2025-10-24 08:17:43.668 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:17:53.675 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:17:53 + → module: 'TaskScheduler' +2025-10-24 08:17:53.676 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:18:03.686 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:18:03 + → module: 'TaskScheduler' +2025-10-24 08:18:03.687 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:18:13.695 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:18:13 + → module: 'TaskScheduler' +2025-10-24 08:18:13.695 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:18:23.723 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:18:23 + → module: 'TaskScheduler' +2025-10-24 08:18:23.723 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:18:33.730 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:18:33 + → module: 'TaskScheduler' +2025-10-24 08:18:33.730 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:18:43.760 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:18:43 + → module: 'TaskScheduler' +2025-10-24 08:18:43.760 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:18:53.779 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:18:53 + → module: 'TaskScheduler' +2025-10-24 08:18:53.779 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:19:03.791 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:19:03 + → module: 'TaskScheduler' +2025-10-24 08:19:03.791 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:19:13.811 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:19:13 + → module: 'TaskScheduler' +2025-10-24 08:19:13.811 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:19:23.819 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:19:23 + → module: 'TaskScheduler' +2025-10-24 08:19:23.819 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:19:33.839 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:19:33 + → module: 'TaskScheduler' +2025-10-24 08:19:33.839 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:19:43.848 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:19:43 + → module: 'TaskScheduler' +2025-10-24 08:19:43.849 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:19:53.874 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:19:53 + → module: 'TaskScheduler' +2025-10-24 08:19:53.874 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:20:03.882 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:20:03 + → module: 'TaskScheduler' +2025-10-24 08:20:03.882 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:20:03.889 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:20:03.926 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 08:20:03.926 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:20:03.926 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 08:20:03.927 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 08:20:03.927 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 08:20:03.955 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 08:20:03.958 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 08:20:03.959 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 08:20:03.959 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 00:07:02 + → module: 'NewsAPIClient' +2025-10-24 08:20:03.960 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 00:07:02 + → module: 'NewsAPIClient' +2025-10-24 08:20:03.960 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 08:20:04.478 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:20:04.513 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:20:04.526 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:20:04.912 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:20:04.913 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 08:20:04.914 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.95秒 + → module: 'NewsAPIClient' +2025-10-24 08:20:04.914 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 08:20:04.915 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 08:20:04.916 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 08:20:04.917 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 08:20:04.918 | DEBUG | rss_subscriptions:235 - 处理条目 1: 人这一辈子,一定要去一趟南昌看“微笑天使”! + → module: 'NewsAPIClient' +2025-10-24 08:20:04.921 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 08:20:04.923 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 08:20:04.924 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 08:20:04.931 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 08:20:04.932 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 08:20:04.933 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 00:10:11 + → module: 'NewsAPIClient' +2025-10-24 08:20:04.933 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 00:10:11 + → module: 'NewsAPIClient' +2025-10-24 08:20:04.933 | INFO | task_scheduler:289 - 任务执行完成,耗时: 1.01秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 08:20:04.941 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 08:20:04.942 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:20:13.929 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:20:13 + → module: 'TaskScheduler' +2025-10-24 08:20:13.929 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:20:23.965 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:20:23 + → module: 'TaskScheduler' +2025-10-24 08:20:23.965 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:20:33.977 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:20:33 + → module: 'TaskScheduler' +2025-10-24 08:20:33.977 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:20:44.003 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:20:44 + → module: 'TaskScheduler' +2025-10-24 08:20:44.003 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:20:54.010 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:20:54 + → module: 'TaskScheduler' +2025-10-24 08:20:54.011 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:21:04.021 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:21:04 + → module: 'TaskScheduler' +2025-10-24 08:21:04.021 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:21:14.031 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:21:14 + → module: 'TaskScheduler' +2025-10-24 08:21:14.031 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:21:24.039 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:21:24 + → module: 'TaskScheduler' +2025-10-24 08:21:24.039 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:21:34.050 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:21:34 + → module: 'TaskScheduler' +2025-10-24 08:21:34.051 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:21:44.061 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:21:44 + → module: 'TaskScheduler' +2025-10-24 08:21:44.061 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:21:54.068 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:21:54 + → module: 'TaskScheduler' +2025-10-24 08:21:54.068 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:22:04.076 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:22:04 + → module: 'TaskScheduler' +2025-10-24 08:22:04.076 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:22:14.083 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:22:14 + → module: 'TaskScheduler' +2025-10-24 08:22:14.084 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:22:24.092 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:22:24 + → module: 'TaskScheduler' +2025-10-24 08:22:24.092 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:22:34.101 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:22:34 + → module: 'TaskScheduler' +2025-10-24 08:22:34.101 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:22:44.110 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:22:44 + → module: 'TaskScheduler' +2025-10-24 08:22:44.110 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:22:54.118 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:22:54 + → module: 'TaskScheduler' +2025-10-24 08:22:54.118 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:23:04.125 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:23:04 + → module: 'TaskScheduler' +2025-10-24 08:23:04.125 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:23:14.133 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:23:14 + → module: 'TaskScheduler' +2025-10-24 08:23:14.133 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:23:24.140 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:23:24 + → module: 'TaskScheduler' +2025-10-24 08:23:24.140 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:23:34.148 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:23:34 + → module: 'TaskScheduler' +2025-10-24 08:23:34.148 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:23:44.173 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:23:44 + → module: 'TaskScheduler' +2025-10-24 08:23:44.173 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:23:54.183 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:23:54 + → module: 'TaskScheduler' +2025-10-24 08:23:54.183 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:24:04.195 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:24:04 + → module: 'TaskScheduler' +2025-10-24 08:24:04.195 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:24:14.212 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:24:14 + → module: 'TaskScheduler' +2025-10-24 08:24:14.212 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:24:24.222 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:24:24 + → module: 'TaskScheduler' +2025-10-24 08:24:24.222 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:24:34.248 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:24:34 + → module: 'TaskScheduler' +2025-10-24 08:24:34.248 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:24:44.258 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:24:44 + → module: 'TaskScheduler' +2025-10-24 08:24:44.258 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:24:54.265 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:24:54 + → module: 'TaskScheduler' +2025-10-24 08:24:54.265 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:25:04.274 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:25:04 + → module: 'TaskScheduler' +2025-10-24 08:25:04.274 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:25:04.282 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:25:04.305 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 08:25:04.306 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:25:04.306 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 08:25:04.307 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 08:25:04.307 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 08:25:04.312 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 08:25:04.332 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 08:25:04.333 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 08:25:04.334 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 00:10:11 + → module: 'NewsAPIClient' +2025-10-24 08:25:04.334 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 00:10:11 + → module: 'NewsAPIClient' +2025-10-24 08:25:04.334 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 08:25:04.773 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:25:04.806 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:25:04.831 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:25:05.221 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:25:05.223 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 08:25:05.224 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.89秒 + → module: 'NewsAPIClient' +2025-10-24 08:25:05.224 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 08:25:05.227 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 08:25:05.228 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 08:25:05.230 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 08:25:05.233 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 00:10:11 + → module: 'NewsAPIClient' +2025-10-24 08:25:05.233 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 00:10:11 + → module: 'NewsAPIClient' +2025-10-24 08:25:05.234 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.93秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 08:25:05.250 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 08:25:05.252 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:25:14.308 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:25:14 + → module: 'TaskScheduler' +2025-10-24 08:25:14.308 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:25:24.318 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:25:24 + → module: 'TaskScheduler' +2025-10-24 08:25:24.318 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:25:34.345 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:25:34 + → module: 'TaskScheduler' +2025-10-24 08:25:34.345 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:25:44.352 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:25:44 + → module: 'TaskScheduler' +2025-10-24 08:25:44.353 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:25:54.382 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:25:54 + → module: 'TaskScheduler' +2025-10-24 08:25:54.382 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:26:04.391 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:26:04 + → module: 'TaskScheduler' +2025-10-24 08:26:04.391 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:26:14.398 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:26:14 + → module: 'TaskScheduler' +2025-10-24 08:26:14.398 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:26:24.406 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:26:24 + → module: 'TaskScheduler' +2025-10-24 08:26:24.406 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:26:34.416 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:26:34 + → module: 'TaskScheduler' +2025-10-24 08:26:34.416 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:26:44.427 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:26:44 + → module: 'TaskScheduler' +2025-10-24 08:26:44.428 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:26:54.436 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:26:54 + → module: 'TaskScheduler' +2025-10-24 08:26:54.436 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:27:04.444 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:27:04 + → module: 'TaskScheduler' +2025-10-24 08:27:04.444 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:27:14.463 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:27:14 + → module: 'TaskScheduler' +2025-10-24 08:27:14.464 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:27:24.494 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:27:24 + → module: 'TaskScheduler' +2025-10-24 08:27:24.494 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:27:34.502 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:27:34 + → module: 'TaskScheduler' +2025-10-24 08:27:34.502 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:27:44.525 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:27:44 + → module: 'TaskScheduler' +2025-10-24 08:27:44.525 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:27:54.550 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:27:54 + → module: 'TaskScheduler' +2025-10-24 08:27:54.550 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:28:04.559 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:28:04 + → module: 'TaskScheduler' +2025-10-24 08:28:04.559 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:28:14.572 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:28:14 + → module: 'TaskScheduler' +2025-10-24 08:28:14.572 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:28:24.582 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:28:24 + → module: 'TaskScheduler' +2025-10-24 08:28:24.582 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:28:34.610 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:28:34 + → module: 'TaskScheduler' +2025-10-24 08:28:34.610 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:28:44.635 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:28:44 + → module: 'TaskScheduler' +2025-10-24 08:28:44.635 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:28:54.642 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:28:54 + → module: 'TaskScheduler' +2025-10-24 08:28:54.643 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:29:04.673 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:29:04 + → module: 'TaskScheduler' +2025-10-24 08:29:04.673 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:29:14.699 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:29:14 + → module: 'TaskScheduler' +2025-10-24 08:29:14.699 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:29:24.708 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:29:24 + → module: 'TaskScheduler' +2025-10-24 08:29:24.708 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:29:34.716 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:29:34 + → module: 'TaskScheduler' +2025-10-24 08:29:34.716 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:29:44.726 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:29:44 + → module: 'TaskScheduler' +2025-10-24 08:29:44.726 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:29:54.752 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:29:54 + → module: 'TaskScheduler' +2025-10-24 08:29:54.752 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:30:04.760 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:30:04 + → module: 'TaskScheduler' +2025-10-24 08:30:04.760 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:30:04.769 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:30:04.801 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 08:30:04.802 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:30:04.802 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 08:30:04.802 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 08:30:04.802 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 08:30:04.826 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 08:30:04.830 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 08:30:04.830 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 08:30:04.831 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 00:10:11 + → module: 'NewsAPIClient' +2025-10-24 08:30:04.831 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 00:10:11 + → module: 'NewsAPIClient' +2025-10-24 08:30:04.831 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 08:30:05.299 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:30:05.317 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:30:05.335 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:30:05.625 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:30:05.628 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 08:30:05.629 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.80秒 + → module: 'NewsAPIClient' +2025-10-24 08:30:05.629 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 08:30:05.632 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 08:30:05.632 | DEBUG | rss_subscriptions:235 - 处理条目 1: 解放军报社论:坚定捍卫人民军队政治本色 + → module: 'NewsAPIClient' +2025-10-24 08:30:05.638 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 08:30:05.640 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 08:30:05.640 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 08:30:05.680 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 08:30:05.681 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 08:30:05.681 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 08:30:05.682 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 08:30:05.683 | DEBUG | rss_subscriptions:235 - 处理条目 1: 解放军报社论:坚定捍卫人民军队政治本色 + → module: 'NewsAPIClient' +2025-10-24 08:30:05.709 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 08:30:05.711 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 08:30:05.712 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 08:30:05.716 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 0 + → error_message: "Duplicate entry '解放军报社论:坚定捍卫人民军队政治本色-2025-1' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '解放军报社论:坚定捍卫人民军队政治本色...', '文章链接': 'http://www.chinanews.com/gn/2025/10-24/10503580.shtml...', '文章摘要': '党的二十届四中全会审议并通过了中共中央军事委员会关于何卫东、苗华、何宏军、王秀斌、林向阳、秦树桐、袁华智、王春宁、张凤中严重违纪违法问题的审查报告,确认中央政治局之前作出... +2025-10-24 08:30:05.717 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 0 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-24 08:30:05.718 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '解放军报社论:坚定捍卫人民军队政治本色-2025-1' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '解放军报社论:坚定捍卫人民军队政治本色-2025-1' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '解... +2025-10-24 08:30:05.718 | INFO | rss_subscriptions:259 - 成功写入 0/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 08:30:05.719 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 00:17:07 + → module: 'NewsAPIClient' +2025-10-24 08:30:05.719 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 00:17:07 + → module: 'NewsAPIClient' +2025-10-24 08:30:05.720 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.92秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 08:30:05.730 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 08:30:05.731 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:30:14.803 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:30:14 + → module: 'TaskScheduler' +2025-10-24 08:30:14.803 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:30:24.823 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:30:24 + → module: 'TaskScheduler' +2025-10-24 08:30:24.823 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:30:34.842 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:30:34 + → module: 'TaskScheduler' +2025-10-24 08:30:34.842 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:30:44.874 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:30:44 + → module: 'TaskScheduler' +2025-10-24 08:30:44.874 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:30:54.887 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:30:54 + → module: 'TaskScheduler' +2025-10-24 08:30:54.888 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:31:04.896 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:31:04 + → module: 'TaskScheduler' +2025-10-24 08:31:04.896 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:31:14.905 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:31:14 + → module: 'TaskScheduler' +2025-10-24 08:31:14.905 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:31:24.913 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:31:24 + → module: 'TaskScheduler' +2025-10-24 08:31:24.913 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:31:34.943 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:31:34 + → module: 'TaskScheduler' +2025-10-24 08:31:34.943 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:31:44.950 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:31:44 + → module: 'TaskScheduler' +2025-10-24 08:31:44.950 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:31:54.958 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:31:54 + → module: 'TaskScheduler' +2025-10-24 08:31:54.958 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:32:04.984 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:32:04 + → module: 'TaskScheduler' +2025-10-24 08:32:04.984 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:32:14.996 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:32:14 + → module: 'TaskScheduler' +2025-10-24 08:32:14.996 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:32:25.004 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:32:25 + → module: 'TaskScheduler' +2025-10-24 08:32:25.005 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:32:35.016 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:32:35 + → module: 'TaskScheduler' +2025-10-24 08:32:35.016 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:32:45.024 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:32:45 + → module: 'TaskScheduler' +2025-10-24 08:32:45.024 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:32:55.056 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:32:55 + → module: 'TaskScheduler' +2025-10-24 08:32:55.057 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:33:05.068 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:33:05 + → module: 'TaskScheduler' +2025-10-24 08:33:05.069 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:33:15.076 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:33:15 + → module: 'TaskScheduler' +2025-10-24 08:33:15.076 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:33:25.086 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:33:25 + → module: 'TaskScheduler' +2025-10-24 08:33:25.086 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:33:35.093 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:33:35 + → module: 'TaskScheduler' +2025-10-24 08:33:35.093 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:33:45.115 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:33:45 + → module: 'TaskScheduler' +2025-10-24 08:33:45.115 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:33:55.145 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:33:55 + → module: 'TaskScheduler' +2025-10-24 08:33:55.145 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:34:05.154 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:34:05 + → module: 'TaskScheduler' +2025-10-24 08:34:05.154 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:34:15.163 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:34:15 + → module: 'TaskScheduler' +2025-10-24 08:34:15.163 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:34:25.172 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:34:25 + → module: 'TaskScheduler' +2025-10-24 08:34:25.172 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:34:35.196 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:34:35 + → module: 'TaskScheduler' +2025-10-24 08:34:35.196 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:34:45.230 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:34:45 + → module: 'TaskScheduler' +2025-10-24 08:34:45.230 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:34:55.239 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:34:55 + → module: 'TaskScheduler' +2025-10-24 08:34:55.239 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:35:05.246 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:35:05 + → module: 'TaskScheduler' +2025-10-24 08:35:05.246 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:35:05.253 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:35:05.287 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 08:35:05.288 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:35:05.288 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 08:35:05.289 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 08:35:05.289 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 08:35:05.316 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 08:35:05.332 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 08:35:05.333 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 08:35:05.333 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 00:17:07 + → module: 'NewsAPIClient' +2025-10-24 08:35:05.334 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 00:17:07 + → module: 'NewsAPIClient' +2025-10-24 08:35:05.334 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 08:35:05.780 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:35:05.794 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:35:05.809 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:35:06.112 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:35:06.114 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 08:35:06.115 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.78秒 + → module: 'NewsAPIClient' +2025-10-24 08:35:06.115 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 08:35:06.117 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 08:35:06.117 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 08:35:06.118 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 08:35:06.120 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 00:17:07 + → module: 'NewsAPIClient' +2025-10-24 08:35:06.120 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 00:17:07 + → module: 'NewsAPIClient' +2025-10-24 08:35:06.121 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.83秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 08:35:06.141 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 08:35:06.141 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:35:15.290 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:35:15 + → module: 'TaskScheduler' +2025-10-24 08:35:15.290 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:35:25.298 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:35:25 + → module: 'TaskScheduler' +2025-10-24 08:35:25.298 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:35:35.305 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:35:35 + → module: 'TaskScheduler' +2025-10-24 08:35:35.305 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:35:45.313 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:35:45 + → module: 'TaskScheduler' +2025-10-24 08:35:45.313 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:35:55.320 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:35:55 + → module: 'TaskScheduler' +2025-10-24 08:35:55.321 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:36:05.329 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:36:05 + → module: 'TaskScheduler' +2025-10-24 08:36:05.329 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:36:15.353 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:36:15 + → module: 'TaskScheduler' +2025-10-24 08:36:15.353 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:36:25.361 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:36:25 + → module: 'TaskScheduler' +2025-10-24 08:36:25.361 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:36:35.380 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:36:35 + → module: 'TaskScheduler' +2025-10-24 08:36:35.380 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:36:45.389 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:36:45 + → module: 'TaskScheduler' +2025-10-24 08:36:45.389 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:36:55.397 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:36:55 + → module: 'TaskScheduler' +2025-10-24 08:36:55.398 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:37:05.427 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:37:05 + → module: 'TaskScheduler' +2025-10-24 08:37:05.427 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:37:15.435 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:37:15 + → module: 'TaskScheduler' +2025-10-24 08:37:15.435 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:37:25.444 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:37:25 + → module: 'TaskScheduler' +2025-10-24 08:37:25.444 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:37:35.451 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:37:35 + → module: 'TaskScheduler' +2025-10-24 08:37:35.451 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:37:45.480 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:37:45 + → module: 'TaskScheduler' +2025-10-24 08:37:45.480 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:37:55.487 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:37:55 + → module: 'TaskScheduler' +2025-10-24 08:37:55.487 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:38:05.493 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:38:05 + → module: 'TaskScheduler' +2025-10-24 08:38:05.493 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:38:15.501 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:38:15 + → module: 'TaskScheduler' +2025-10-24 08:38:15.501 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:38:25.508 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:38:25 + → module: 'TaskScheduler' +2025-10-24 08:38:25.508 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:38:35.541 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:38:35 + → module: 'TaskScheduler' +2025-10-24 08:38:35.541 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:38:45.549 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:38:45 + → module: 'TaskScheduler' +2025-10-24 08:38:45.549 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:38:55.572 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:38:55 + → module: 'TaskScheduler' +2025-10-24 08:38:55.572 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:39:05.580 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:39:05 + → module: 'TaskScheduler' +2025-10-24 08:39:05.580 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:39:15.614 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:39:15 + → module: 'TaskScheduler' +2025-10-24 08:39:15.614 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:39:25.625 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:39:25 + → module: 'TaskScheduler' +2025-10-24 08:39:25.625 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:39:35.632 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:39:35 + → module: 'TaskScheduler' +2025-10-24 08:39:35.632 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:39:45.639 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:39:45 + → module: 'TaskScheduler' +2025-10-24 08:39:45.639 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:39:55.648 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:39:55 + → module: 'TaskScheduler' +2025-10-24 08:39:55.648 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:40:05.660 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:40:05 + → module: 'TaskScheduler' +2025-10-24 08:40:05.660 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:40:05.669 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:40:05.706 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 08:40:05.707 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:40:05.707 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 08:40:05.707 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 08:40:05.707 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 08:40:05.733 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 08:40:05.737 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 08:40:05.738 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 08:40:05.738 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 00:17:07 + → module: 'NewsAPIClient' +2025-10-24 08:40:05.738 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 00:17:07 + → module: 'NewsAPIClient' +2025-10-24 08:40:05.740 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 08:40:06.198 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:40:06.210 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:40:06.225 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:40:06.555 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:40:06.556 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 08:40:06.557 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.82秒 + → module: 'NewsAPIClient' +2025-10-24 08:40:06.557 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 08:40:06.558 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 08:40:06.559 | DEBUG | rss_subscriptions:235 - 处理条目 1: 第一观察|关键时期的关键部署 + → module: 'NewsAPIClient' +2025-10-24 08:40:06.575 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 08:40:06.578 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 08:40:06.579 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 08:40:06.614 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 08:40:06.615 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 08:40:06.616 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 08:40:06.618 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 08:40:06.620 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 00:36:50 + → module: 'NewsAPIClient' +2025-10-24 08:40:06.621 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 00:36:50 + → module: 'NewsAPIClient' +2025-10-24 08:40:06.621 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.91秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 08:40:06.643 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 08:40:06.643 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:40:15.709 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:40:15 + → module: 'TaskScheduler' +2025-10-24 08:40:15.710 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:40:25.732 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:40:25 + → module: 'TaskScheduler' +2025-10-24 08:40:25.732 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:40:35.739 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:40:35 + → module: 'TaskScheduler' +2025-10-24 08:40:35.740 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:40:45.748 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:40:45 + → module: 'TaskScheduler' +2025-10-24 08:40:45.748 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:40:55.772 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:40:55 + → module: 'TaskScheduler' +2025-10-24 08:40:55.772 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:41:05.783 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:41:05 + → module: 'TaskScheduler' +2025-10-24 08:41:05.783 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:41:15.794 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:41:15 + → module: 'TaskScheduler' +2025-10-24 08:41:15.794 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:41:25.802 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:41:25 + → module: 'TaskScheduler' +2025-10-24 08:41:25.802 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:41:35.815 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:41:35 + → module: 'TaskScheduler' +2025-10-24 08:41:35.815 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:41:45.822 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:41:45 + → module: 'TaskScheduler' +2025-10-24 08:41:45.822 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:41:55.829 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:41:55 + → module: 'TaskScheduler' +2025-10-24 08:41:55.829 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:42:05.858 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:42:05 + → module: 'TaskScheduler' +2025-10-24 08:42:05.858 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:42:15.887 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:42:15 + → module: 'TaskScheduler' +2025-10-24 08:42:15.887 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:42:25.900 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:42:25 + → module: 'TaskScheduler' +2025-10-24 08:42:25.900 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:42:35.933 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:42:35 + → module: 'TaskScheduler' +2025-10-24 08:42:35.933 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:42:45.941 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:42:45 + → module: 'TaskScheduler' +2025-10-24 08:42:45.941 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:42:55.963 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:42:55 + → module: 'TaskScheduler' +2025-10-24 08:42:55.963 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:43:05.971 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:43:05 + → module: 'TaskScheduler' +2025-10-24 08:43:05.971 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:43:15.997 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:43:15 + → module: 'TaskScheduler' +2025-10-24 08:43:15.997 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:43:26.019 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:43:26 + → module: 'TaskScheduler' +2025-10-24 08:43:26.019 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:43:36.028 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:43:36 + → module: 'TaskScheduler' +2025-10-24 08:43:36.028 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:43:46.036 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:43:46 + → module: 'TaskScheduler' +2025-10-24 08:43:46.036 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:43:56.057 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:43:56 + → module: 'TaskScheduler' +2025-10-24 08:43:56.057 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:44:06.066 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:44:06 + → module: 'TaskScheduler' +2025-10-24 08:44:06.067 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:44:16.074 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:44:16 + → module: 'TaskScheduler' +2025-10-24 08:44:16.075 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:44:26.083 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:44:26 + → module: 'TaskScheduler' +2025-10-24 08:44:26.083 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:44:36.091 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:44:36 + → module: 'TaskScheduler' +2025-10-24 08:44:36.091 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:44:46.116 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:44:46 + → module: 'TaskScheduler' +2025-10-24 08:44:46.116 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:44:56.124 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:44:56 + → module: 'TaskScheduler' +2025-10-24 08:44:56.125 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:45:06.145 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:45:06 + → module: 'TaskScheduler' +2025-10-24 08:45:06.145 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:45:06.157 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:45:06.165 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 08:45:06.166 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:45:06.166 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 08:45:06.166 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 08:45:06.167 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 08:45:06.170 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 08:45:06.187 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 08:45:06.187 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 08:45:06.188 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 00:36:50 + → module: 'NewsAPIClient' +2025-10-24 08:45:06.188 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 00:36:50 + → module: 'NewsAPIClient' +2025-10-24 08:45:06.188 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 08:45:06.614 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:45:06.626 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:45:06.640 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:45:06.961 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:45:06.962 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 08:45:06.963 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.77秒 + → module: 'NewsAPIClient' +2025-10-24 08:45:06.963 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 08:45:06.964 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 08:45:06.964 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 08:45:06.966 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 08:45:06.968 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 00:36:50 + → module: 'NewsAPIClient' +2025-10-24 08:45:06.968 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 00:36:50 + → module: 'NewsAPIClient' +2025-10-24 08:45:06.968 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.80秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 08:45:06.977 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 08:45:06.977 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:45:16.168 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:45:16 + → module: 'TaskScheduler' +2025-10-24 08:45:16.168 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:45:26.175 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:45:26 + → module: 'TaskScheduler' +2025-10-24 08:45:26.175 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:45:36.199 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:45:36 + → module: 'TaskScheduler' +2025-10-24 08:45:36.199 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:45:46.208 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:45:46 + → module: 'TaskScheduler' +2025-10-24 08:45:46.208 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:45:56.218 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:45:56 + → module: 'TaskScheduler' +2025-10-24 08:45:56.218 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:46:06.246 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:46:06 + → module: 'TaskScheduler' +2025-10-24 08:46:06.246 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:46:16.257 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:46:16 + → module: 'TaskScheduler' +2025-10-24 08:46:16.257 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:46:26.264 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:46:26 + → module: 'TaskScheduler' +2025-10-24 08:46:26.264 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:46:36.277 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:46:36 + → module: 'TaskScheduler' +2025-10-24 08:46:36.278 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:46:46.285 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:46:46 + → module: 'TaskScheduler' +2025-10-24 08:46:46.285 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:46:56.293 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:46:56 + → module: 'TaskScheduler' +2025-10-24 08:46:56.293 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:47:06.302 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:47:06 + → module: 'TaskScheduler' +2025-10-24 08:47:06.302 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:47:16.325 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:47:16 + → module: 'TaskScheduler' +2025-10-24 08:47:16.325 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:47:26.352 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:47:26 + → module: 'TaskScheduler' +2025-10-24 08:47:26.352 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:47:36.374 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:47:36 + → module: 'TaskScheduler' +2025-10-24 08:47:36.374 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:47:46.382 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:47:46 + → module: 'TaskScheduler' +2025-10-24 08:47:46.382 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:47:56.389 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:47:56 + → module: 'TaskScheduler' +2025-10-24 08:47:56.389 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:48:06.412 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:48:06 + → module: 'TaskScheduler' +2025-10-24 08:48:06.412 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:48:16.421 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:48:16 + → module: 'TaskScheduler' +2025-10-24 08:48:16.421 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:48:26.430 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:48:26 + → module: 'TaskScheduler' +2025-10-24 08:48:26.430 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:48:36.439 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:48:36 + → module: 'TaskScheduler' +2025-10-24 08:48:36.439 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:48:46.450 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:48:46 + → module: 'TaskScheduler' +2025-10-24 08:48:46.450 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:48:56.457 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:48:56 + → module: 'TaskScheduler' +2025-10-24 08:48:56.457 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:49:06.467 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:49:06 + → module: 'TaskScheduler' +2025-10-24 08:49:06.467 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:49:16.477 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:49:16 + → module: 'TaskScheduler' +2025-10-24 08:49:16.477 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:49:26.485 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:49:26 + → module: 'TaskScheduler' +2025-10-24 08:49:26.485 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:49:36.494 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:49:36 + → module: 'TaskScheduler' +2025-10-24 08:49:36.494 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:49:46.515 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:49:46 + → module: 'TaskScheduler' +2025-10-24 08:49:46.515 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:49:56.534 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:49:56 + → module: 'TaskScheduler' +2025-10-24 08:49:56.534 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:50:06.558 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:50:06 + → module: 'TaskScheduler' +2025-10-24 08:50:06.558 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:50:06.577 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:50:06.620 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 08:50:06.620 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:50:06.620 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 08:50:06.621 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 08:50:06.621 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 08:50:06.625 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 08:50:06.650 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 08:50:06.651 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 08:50:06.651 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 00:36:50 + → module: 'NewsAPIClient' +2025-10-24 08:50:06.652 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 00:36:50 + → module: 'NewsAPIClient' +2025-10-24 08:50:06.652 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 08:50:07.136 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:50:07.157 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:50:07.173 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:50:07.531 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:50:07.533 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 08:50:07.534 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.88秒 + → module: 'NewsAPIClient' +2025-10-24 08:50:07.534 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 08:50:07.535 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 08:50:07.536 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 08:50:07.537 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 08:50:07.538 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 00:36:50 + → module: 'NewsAPIClient' +2025-10-24 08:50:07.538 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 00:36:50 + → module: 'NewsAPIClient' +2025-10-24 08:50:07.539 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.92秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 08:50:07.580 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 08:50:07.581 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:50:16.623 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:50:16 + → module: 'TaskScheduler' +2025-10-24 08:50:16.623 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:50:26.630 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:50:26 + → module: 'TaskScheduler' +2025-10-24 08:50:26.630 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:50:36.637 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:50:36 + → module: 'TaskScheduler' +2025-10-24 08:50:36.637 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:50:46.660 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:50:46 + → module: 'TaskScheduler' +2025-10-24 08:50:46.660 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:50:56.668 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:50:56 + → module: 'TaskScheduler' +2025-10-24 08:50:56.668 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:51:06.677 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:51:06 + → module: 'TaskScheduler' +2025-10-24 08:51:06.677 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:51:16.684 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:51:16 + → module: 'TaskScheduler' +2025-10-24 08:51:16.684 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:51:26.691 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:51:26 + → module: 'TaskScheduler' +2025-10-24 08:51:26.691 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:51:36.700 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:51:36 + → module: 'TaskScheduler' +2025-10-24 08:51:36.700 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:51:46.720 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:51:46 + → module: 'TaskScheduler' +2025-10-24 08:51:46.720 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:51:56.744 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:51:56 + → module: 'TaskScheduler' +2025-10-24 08:51:56.744 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:52:06.765 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:52:06 + → module: 'TaskScheduler' +2025-10-24 08:52:06.765 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:52:16.797 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:52:16 + → module: 'TaskScheduler' +2025-10-24 08:52:16.798 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:52:26.809 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:52:26 + → module: 'TaskScheduler' +2025-10-24 08:52:26.809 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:52:36.818 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:52:36 + → module: 'TaskScheduler' +2025-10-24 08:52:36.818 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:52:46.830 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:52:46 + → module: 'TaskScheduler' +2025-10-24 08:52:46.830 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:52:56.838 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:52:56 + → module: 'TaskScheduler' +2025-10-24 08:52:56.838 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:53:06.849 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:53:06 + → module: 'TaskScheduler' +2025-10-24 08:53:06.849 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:53:16.858 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:53:16 + → module: 'TaskScheduler' +2025-10-24 08:53:16.858 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:53:26.866 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:53:26 + → module: 'TaskScheduler' +2025-10-24 08:53:26.866 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:53:36.893 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:53:36 + → module: 'TaskScheduler' +2025-10-24 08:53:36.893 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:53:46.905 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:53:46 + → module: 'TaskScheduler' +2025-10-24 08:53:46.905 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:53:56.913 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:53:56 + → module: 'TaskScheduler' +2025-10-24 08:53:56.913 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:54:06.921 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:54:06 + → module: 'TaskScheduler' +2025-10-24 08:54:06.922 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:54:16.932 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:54:16 + → module: 'TaskScheduler' +2025-10-24 08:54:16.932 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:54:26.940 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:54:26 + → module: 'TaskScheduler' +2025-10-24 08:54:26.940 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:54:36.951 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:54:36 + → module: 'TaskScheduler' +2025-10-24 08:54:36.952 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:54:46.962 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:54:46 + → module: 'TaskScheduler' +2025-10-24 08:54:46.962 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:54:56.971 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:54:56 + → module: 'TaskScheduler' +2025-10-24 08:54:56.971 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:55:06.984 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:55:06 + → module: 'TaskScheduler' +2025-10-24 08:55:06.984 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:55:07.010 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:55:07.030 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 08:55:07.031 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:55:07.031 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 08:55:07.031 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 08:55:07.031 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 08:55:07.036 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 08:55:07.052 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 08:55:07.053 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 08:55:07.054 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 00:36:50 + → module: 'NewsAPIClient' +2025-10-24 08:55:07.054 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 00:36:50 + → module: 'NewsAPIClient' +2025-10-24 08:55:07.055 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 08:55:07.507 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:55:07.528 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:55:07.594 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:55:07.930 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 08:55:07.933 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 08:55:07.933 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.88秒 + → module: 'NewsAPIClient' +2025-10-24 08:55:07.934 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 08:55:07.936 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 08:55:07.937 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 08:55:07.938 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 08:55:07.939 | DEBUG | rss_subscriptions:235 - 处理条目 1: 事关中小学生心理健康 教育部发布10条举措 + → module: 'NewsAPIClient' +2025-10-24 08:55:07.955 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 08:55:07.957 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 08:55:07.958 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 08:55:07.965 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 08:55:07.965 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 08:55:07.966 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 00:50:43 + → module: 'NewsAPIClient' +2025-10-24 08:55:07.966 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 00:50:43 + → module: 'NewsAPIClient' +2025-10-24 08:55:07.967 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.94秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 08:55:07.991 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 08:55:07.992 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 08:55:17.033 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:55:17 + → module: 'TaskScheduler' +2025-10-24 08:55:17.033 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:55:27.059 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:55:27 + → module: 'TaskScheduler' +2025-10-24 08:55:27.060 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:55:37.068 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:55:37 + → module: 'TaskScheduler' +2025-10-24 08:55:37.068 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:55:47.089 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:55:47 + → module: 'TaskScheduler' +2025-10-24 08:55:47.089 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:55:57.117 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:55:57 + → module: 'TaskScheduler' +2025-10-24 08:55:57.117 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:56:07.127 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:56:07 + → module: 'TaskScheduler' +2025-10-24 08:56:07.127 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:56:17.134 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:56:17 + → module: 'TaskScheduler' +2025-10-24 08:56:17.134 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:56:27.142 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:56:27 + → module: 'TaskScheduler' +2025-10-24 08:56:27.142 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:56:37.168 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:56:37 + → module: 'TaskScheduler' +2025-10-24 08:56:37.168 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:56:47.176 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:56:47 + → module: 'TaskScheduler' +2025-10-24 08:56:47.177 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:56:57.189 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:56:57 + → module: 'TaskScheduler' +2025-10-24 08:56:57.190 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:57:07.210 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:57:07 + → module: 'TaskScheduler' +2025-10-24 08:57:07.210 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:57:17.218 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:57:17 + → module: 'TaskScheduler' +2025-10-24 08:57:17.218 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:57:27.227 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:57:27 + → module: 'TaskScheduler' +2025-10-24 08:57:27.227 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:57:37.235 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:57:37 + → module: 'TaskScheduler' +2025-10-24 08:57:37.235 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:57:47.242 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:57:47 + → module: 'TaskScheduler' +2025-10-24 08:57:47.242 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:57:57.249 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:57:57 + → module: 'TaskScheduler' +2025-10-24 08:57:57.249 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:58:07.256 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:58:07 + → module: 'TaskScheduler' +2025-10-24 08:58:07.256 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:58:17.276 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:58:17 + → module: 'TaskScheduler' +2025-10-24 08:58:17.276 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:58:27.283 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:58:27 + → module: 'TaskScheduler' +2025-10-24 08:58:27.283 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:58:37.291 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:58:37 + → module: 'TaskScheduler' +2025-10-24 08:58:37.291 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:58:47.300 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:58:47 + → module: 'TaskScheduler' +2025-10-24 08:58:47.300 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:58:57.309 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:58:57 + → module: 'TaskScheduler' +2025-10-24 08:58:57.310 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:59:07.343 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:59:07 + → module: 'TaskScheduler' +2025-10-24 08:59:07.343 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:59:17.374 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:59:17 + → module: 'TaskScheduler' +2025-10-24 08:59:17.374 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:59:27.382 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:59:27 + → module: 'TaskScheduler' +2025-10-24 08:59:27.382 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:59:37.390 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:59:37 + → module: 'TaskScheduler' +2025-10-24 08:59:37.390 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:59:47.398 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:59:47 + → module: 'TaskScheduler' +2025-10-24 08:59:47.398 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 08:59:57.407 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 08:59:57 + → module: 'TaskScheduler' +2025-10-24 08:59:57.408 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:00:07.437 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:00:07 + → module: 'TaskScheduler' +2025-10-24 09:00:07.437 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:00:07.445 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:00:07.502 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 09:00:07.502 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:00:07.503 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 09:00:07.503 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 09:00:07.503 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 09:00:07.506 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 09:00:07.529 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 09:00:07.530 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 09:00:07.531 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 00:50:43 + → module: 'NewsAPIClient' +2025-10-24 09:00:07.531 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 00:50:43 + → module: 'NewsAPIClient' +2025-10-24 09:00:07.532 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 09:00:07.955 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:00:07.993 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:00:08.014 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:00:08.363 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:00:08.365 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 09:00:08.365 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.83秒 + → module: 'NewsAPIClient' +2025-10-24 09:00:08.365 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 09:00:08.366 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 09:00:08.367 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 09:00:08.368 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 09:00:08.368 | DEBUG | rss_subscriptions:235 - 处理条目 1: 青海东部等地今日有较强降雪 冷空气将影响内蒙古东北地区一带 + → module: 'NewsAPIClient' +2025-10-24 09:00:08.368 | DEBUG | rss_subscriptions:235 - 处理条目 2: 中东部大部地区降水稀少 明起冷空气影响北方局地降温8℃以上 + → module: 'NewsAPIClient' +2025-10-24 09:00:08.368 | DEBUG | rss_subscriptions:235 - 处理条目 3: 青藏高原东部有持续性降雪 我国东部和南部海区仍有大风 + → module: 'NewsAPIClient' +2025-10-24 09:00:08.372 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 09:00:08.373 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 09:00:08.374 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 3 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 09:00:08.393 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 3 + → total_inserted: 3 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 09:00:08.393 | INFO | rss_subscriptions:259 - 成功写入 3/3 条记录 + → module: 'NewsAPIClient' +2025-10-24 09:00:08.394 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 00:58:05 + → module: 'NewsAPIClient' +2025-10-24 09:00:08.394 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 00:58:05 + → module: 'NewsAPIClient' +2025-10-24 09:00:08.396 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.89秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 09:00:08.405 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 09:00:08.406 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:00:17.504 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:00:17 + → module: 'TaskScheduler' +2025-10-24 09:00:17.505 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:00:27.516 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:00:27 + → module: 'TaskScheduler' +2025-10-24 09:00:27.517 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:00:37.523 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:00:37 + → module: 'TaskScheduler' +2025-10-24 09:00:37.523 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:00:47.548 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:00:47 + → module: 'TaskScheduler' +2025-10-24 09:00:47.549 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:00:57.559 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:00:57 + → module: 'TaskScheduler' +2025-10-24 09:00:57.559 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:01:07.584 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:01:07 + → module: 'TaskScheduler' +2025-10-24 09:01:07.584 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:01:17.593 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:01:17 + → module: 'TaskScheduler' +2025-10-24 09:01:17.593 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:01:27.602 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:01:27 + → module: 'TaskScheduler' +2025-10-24 09:01:27.602 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:01:37.610 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:01:37 + → module: 'TaskScheduler' +2025-10-24 09:01:37.610 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:01:47.617 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:01:47 + → module: 'TaskScheduler' +2025-10-24 09:01:47.617 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:01:57.627 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:01:57 + → module: 'TaskScheduler' +2025-10-24 09:01:57.627 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:02:07.635 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:02:07 + → module: 'TaskScheduler' +2025-10-24 09:02:07.636 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:02:17.643 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:02:17 + → module: 'TaskScheduler' +2025-10-24 09:02:17.643 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:02:27.650 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:02:27 + → module: 'TaskScheduler' +2025-10-24 09:02:27.650 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:02:37.671 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:02:37 + → module: 'TaskScheduler' +2025-10-24 09:02:37.671 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:02:47.680 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:02:47 + → module: 'TaskScheduler' +2025-10-24 09:02:47.680 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:02:57.688 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:02:57 + → module: 'TaskScheduler' +2025-10-24 09:02:57.688 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:03:07.700 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:03:07 + → module: 'TaskScheduler' +2025-10-24 09:03:07.700 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:03:17.710 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:03:17 + → module: 'TaskScheduler' +2025-10-24 09:03:17.710 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:03:27.734 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:03:27 + → module: 'TaskScheduler' +2025-10-24 09:03:27.734 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:03:37.744 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:03:37 + → module: 'TaskScheduler' +2025-10-24 09:03:37.744 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:03:47.767 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:03:47 + → module: 'TaskScheduler' +2025-10-24 09:03:47.767 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:03:57.790 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:03:57 + → module: 'TaskScheduler' +2025-10-24 09:03:57.790 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:04:07.817 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:04:07 + → module: 'TaskScheduler' +2025-10-24 09:04:07.817 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:04:17.829 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:04:17 + → module: 'TaskScheduler' +2025-10-24 09:04:17.829 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:04:27.844 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:04:27 + → module: 'TaskScheduler' +2025-10-24 09:04:27.844 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:04:37.861 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:04:37 + → module: 'TaskScheduler' +2025-10-24 09:04:37.861 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:04:47.868 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:04:47 + → module: 'TaskScheduler' +2025-10-24 09:04:47.868 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:04:57.875 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:04:57 + → module: 'TaskScheduler' +2025-10-24 09:04:57.875 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:05:07.882 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:05:07 + → module: 'TaskScheduler' +2025-10-24 09:05:07.882 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:05:07.889 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:05:07.897 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 09:05:07.898 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:05:07.898 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 09:05:07.898 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 09:05:07.899 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 09:05:07.901 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 09:05:07.904 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 09:05:07.904 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 09:05:07.905 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 00:58:05 + → module: 'NewsAPIClient' +2025-10-24 09:05:07.905 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 00:58:05 + → module: 'NewsAPIClient' +2025-10-24 09:05:07.905 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 09:05:08.369 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:05:08.382 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:05:08.425 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:05:08.756 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:05:08.758 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 09:05:08.758 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.85秒 + → module: 'NewsAPIClient' +2025-10-24 09:05:08.759 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 09:05:08.759 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 09:05:08.760 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 09:05:08.762 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 09:05:08.763 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 00:58:05 + → module: 'NewsAPIClient' +2025-10-24 09:05:08.763 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 00:58:05 + → module: 'NewsAPIClient' +2025-10-24 09:05:08.764 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.87秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 09:05:08.771 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 09:05:08.772 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:05:17.900 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:05:17 + → module: 'TaskScheduler' +2025-10-24 09:05:17.900 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:05:27.908 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:05:27 + → module: 'TaskScheduler' +2025-10-24 09:05:27.908 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:05:37.915 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:05:37 + → module: 'TaskScheduler' +2025-10-24 09:05:37.915 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:05:47.922 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:05:47 + → module: 'TaskScheduler' +2025-10-24 09:05:47.922 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:05:57.930 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:05:57 + → module: 'TaskScheduler' +2025-10-24 09:05:57.930 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:06:07.939 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:06:07 + → module: 'TaskScheduler' +2025-10-24 09:06:07.939 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:06:17.946 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:06:17 + → module: 'TaskScheduler' +2025-10-24 09:06:17.946 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:06:27.953 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:06:27 + → module: 'TaskScheduler' +2025-10-24 09:06:27.953 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:06:37.960 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:06:37 + → module: 'TaskScheduler' +2025-10-24 09:06:37.960 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:06:47.968 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:06:47 + → module: 'TaskScheduler' +2025-10-24 09:06:47.968 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:06:57.976 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:06:57 + → module: 'TaskScheduler' +2025-10-24 09:06:57.976 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:07:07.983 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:07:07 + → module: 'TaskScheduler' +2025-10-24 09:07:07.983 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:07:17.991 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:07:17 + → module: 'TaskScheduler' +2025-10-24 09:07:17.991 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:07:28.015 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:07:28 + → module: 'TaskScheduler' +2025-10-24 09:07:28.015 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:07:38.035 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:07:38 + → module: 'TaskScheduler' +2025-10-24 09:07:38.035 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:07:48.042 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:07:48 + → module: 'TaskScheduler' +2025-10-24 09:07:48.042 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:07:58.063 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:07:58 + → module: 'TaskScheduler' +2025-10-24 09:07:58.063 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:08:08.070 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:08:08 + → module: 'TaskScheduler' +2025-10-24 09:08:08.070 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:08:18.078 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:08:18 + → module: 'TaskScheduler' +2025-10-24 09:08:18.078 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:08:28.109 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:08:28 + → module: 'TaskScheduler' +2025-10-24 09:08:28.109 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:08:38.117 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:08:38 + → module: 'TaskScheduler' +2025-10-24 09:08:38.117 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:08:48.126 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:08:48 + → module: 'TaskScheduler' +2025-10-24 09:08:48.126 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:08:58.133 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:08:58 + → module: 'TaskScheduler' +2025-10-24 09:08:58.133 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:09:08.140 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:09:08 + → module: 'TaskScheduler' +2025-10-24 09:09:08.140 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:09:08.157 | INFO | main:87 - 小时任务统计 + → module: 'Main' + → 总任务数: 12 + → 成功: 12 + → 失败: 0 +2025-10-24 09:09:18.158 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:09:18 + → module: 'TaskScheduler' +2025-10-24 09:09:18.159 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:09:28.166 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:09:28 + → module: 'TaskScheduler' +2025-10-24 09:09:28.166 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:09:38.190 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:09:38 + → module: 'TaskScheduler' +2025-10-24 09:09:38.190 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:09:48.197 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:09:48 + → module: 'TaskScheduler' +2025-10-24 09:09:48.197 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:09:58.223 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:09:58 + → module: 'TaskScheduler' +2025-10-24 09:09:58.223 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:10:08.231 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:10:08 + → module: 'TaskScheduler' +2025-10-24 09:10:08.231 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:10:08.238 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:10:08.259 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 09:10:08.259 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:10:08.260 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 09:10:08.260 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 09:10:08.260 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 09:10:08.263 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 09:10:08.268 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 09:10:08.269 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 09:10:08.270 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 00:58:05 + → module: 'NewsAPIClient' +2025-10-24 09:10:08.270 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 00:58:05 + → module: 'NewsAPIClient' +2025-10-24 09:10:08.270 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 09:10:08.695 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:10:08.714 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:10:08.741 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:10:08.968 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:10:08.970 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 09:10:08.971 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.70秒 + → module: 'NewsAPIClient' +2025-10-24 09:10:08.971 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 09:10:08.974 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 09:10:08.975 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 09:10:08.977 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 09:10:08.979 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 00:58:05 + → module: 'NewsAPIClient' +2025-10-24 09:10:08.979 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 00:58:05 + → module: 'NewsAPIClient' +2025-10-24 09:10:08.979 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.72秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 09:10:08.988 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 09:10:08.988 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:10:18.261 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:10:18 + → module: 'TaskScheduler' +2025-10-24 09:10:18.262 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:10:28.274 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:10:28 + → module: 'TaskScheduler' +2025-10-24 09:10:28.274 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:10:38.285 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:10:38 + → module: 'TaskScheduler' +2025-10-24 09:10:38.286 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:10:48.297 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:10:48 + → module: 'TaskScheduler' +2025-10-24 09:10:48.297 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:10:58.305 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:10:58 + → module: 'TaskScheduler' +2025-10-24 09:10:58.305 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:11:08.312 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:11:08 + → module: 'TaskScheduler' +2025-10-24 09:11:08.312 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:11:18.319 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:11:18 + → module: 'TaskScheduler' +2025-10-24 09:11:18.319 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:11:28.326 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:11:28 + → module: 'TaskScheduler' +2025-10-24 09:11:28.326 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:11:38.333 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:11:38 + → module: 'TaskScheduler' +2025-10-24 09:11:38.333 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:11:48.340 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:11:48 + → module: 'TaskScheduler' +2025-10-24 09:11:48.341 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:11:58.347 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:11:58 + → module: 'TaskScheduler' +2025-10-24 09:11:58.347 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:12:08.354 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:12:08 + → module: 'TaskScheduler' +2025-10-24 09:12:08.354 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:12:18.376 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:12:18 + → module: 'TaskScheduler' +2025-10-24 09:12:18.376 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:12:28.383 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:12:28 + → module: 'TaskScheduler' +2025-10-24 09:12:28.383 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:12:38.392 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:12:38 + → module: 'TaskScheduler' +2025-10-24 09:12:38.393 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:12:48.402 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:12:48 + → module: 'TaskScheduler' +2025-10-24 09:12:48.402 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:12:58.412 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:12:58 + → module: 'TaskScheduler' +2025-10-24 09:12:58.412 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:13:08.423 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:13:08 + → module: 'TaskScheduler' +2025-10-24 09:13:08.423 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:13:18.435 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:13:18 + → module: 'TaskScheduler' +2025-10-24 09:13:18.435 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:13:28.442 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:13:28 + → module: 'TaskScheduler' +2025-10-24 09:13:28.442 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:13:38.451 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:13:38 + → module: 'TaskScheduler' +2025-10-24 09:13:38.451 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:13:48.470 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:13:48 + → module: 'TaskScheduler' +2025-10-24 09:13:48.470 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:13:58.477 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:13:58 + → module: 'TaskScheduler' +2025-10-24 09:13:58.477 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:14:08.504 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:14:08 + → module: 'TaskScheduler' +2025-10-24 09:14:08.505 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:14:18.521 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:14:18 + → module: 'TaskScheduler' +2025-10-24 09:14:18.521 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:14:28.533 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:14:28 + → module: 'TaskScheduler' +2025-10-24 09:14:28.533 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:14:38.540 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:14:38 + → module: 'TaskScheduler' +2025-10-24 09:14:38.540 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:14:48.549 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:14:48 + → module: 'TaskScheduler' +2025-10-24 09:14:48.549 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:14:58.558 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:14:58 + → module: 'TaskScheduler' +2025-10-24 09:14:58.558 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:15:08.565 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:15:08 + → module: 'TaskScheduler' +2025-10-24 09:15:08.566 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:15:08.578 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:15:08.639 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 09:15:08.639 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:15:08.639 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 09:15:08.640 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 09:15:08.640 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 09:15:08.661 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 09:15:08.667 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 09:15:08.667 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 09:15:08.668 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 00:58:05 + → module: 'NewsAPIClient' +2025-10-24 09:15:08.669 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 00:58:05 + → module: 'NewsAPIClient' +2025-10-24 09:15:08.669 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 09:15:09.180 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:15:09.208 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:15:09.218 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:15:09.521 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:15:09.522 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 09:15:09.523 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.85秒 + → module: 'NewsAPIClient' +2025-10-24 09:15:09.523 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 09:15:09.524 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 09:15:09.524 | DEBUG | rss_subscriptions:235 - 处理条目 1: 柬埔寨重申打击网赌电诈等跨国犯罪决心 + → module: 'NewsAPIClient' +2025-10-24 09:15:09.524 | DEBUG | rss_subscriptions:235 - 处理条目 2: 普京:美对俄新一轮制裁无济于事反而损害两国关系 + → module: 'NewsAPIClient' +2025-10-24 09:15:09.545 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 09:15:09.547 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 09:15:09.548 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 2 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 09:15:09.580 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 2 + → total_inserted: 2 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 09:15:09.581 | INFO | rss_subscriptions:259 - 成功写入 2/2 条记录 + → module: 'NewsAPIClient' +2025-10-24 09:15:09.581 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 09:15:09.583 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 09:15:09.584 | DEBUG | rss_subscriptions:235 - 处理条目 1: 柬埔寨重申打击网赌电诈等跨国犯罪决心 + → module: 'NewsAPIClient' +2025-10-24 09:15:09.584 | DEBUG | rss_subscriptions:235 - 处理条目 2: 李岩松夺亚青会中国队首金 + → module: 'NewsAPIClient' +2025-10-24 09:15:09.584 | DEBUG | rss_subscriptions:235 - 处理条目 3: 普京:美对俄新一轮制裁无济于事反而损害两国关系 + → module: 'NewsAPIClient' +2025-10-24 09:15:09.607 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 09:15:09.609 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 09:15:09.610 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 3 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 09:15:09.613 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 0 + → error_message: "Duplicate entry '柬埔寨重申打击网赌电诈等跨国犯罪决心-2025-10-2' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '柬埔寨重申打击网赌电诈等跨国犯罪决心...', '文章链接': 'http://www.chinanews.com/gj/2025/10-24/10503574.shtml...', '文章摘要': '中新社金边10月23日电 (记者 杨强)柬埔寨外交与国际合作部当地时间23日发表声明,重申柬政府坚定致力于打击网络诈骗、人口贩运等跨国犯罪的决心。...', '发布时间':... +2025-10-24 09:15:09.623 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 2 + → error_message: "Duplicate entry '普京:美对俄新一轮制裁无济于事反而损害两国å' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '普京:美对俄新一轮制裁无济于事反而损害两国关系...', '文章链接': 'http://www.chinanews.com/gj/2025/10-24/10503573.shtml...', '文章摘要': '中新社莫斯科10月23日电 俄罗斯总统普京23日表示,美国新一轮对俄制裁实质上是向俄施压,非但无济于事反而损害俄美关系。他同时表示,向乌克兰提供“战斧”巡航导弹... +2025-10-24 09:15:09.623 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 3 + → total_inserted: 1 + → total_duplicates: 2 + → total_failed: 0 + → failed_records_count: 2 +2025-10-24 09:15:09.624 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '柬埔寨重申打击网赌电诈等跨国犯罪决心-2025-10-2' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 2, 'type... + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '柬埔寨重申打击网赌电诈等跨国犯罪决心-2025-10-2' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': ... +2025-10-24 09:15:09.625 | INFO | rss_subscriptions:259 - 成功写入 1/3 条记录 + → module: 'NewsAPIClient' +2025-10-24 09:15:09.626 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 01:09:54 + → module: 'NewsAPIClient' +2025-10-24 09:15:09.626 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 01:09:54 + → module: 'NewsAPIClient' +2025-10-24 09:15:09.627 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.99秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 09:15:09.635 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 09:15:09.635 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:15:18.641 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:15:18 + → module: 'TaskScheduler' +2025-10-24 09:15:18.641 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:15:28.668 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:15:28 + → module: 'TaskScheduler' +2025-10-24 09:15:28.668 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:15:38.691 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:15:38 + → module: 'TaskScheduler' +2025-10-24 09:15:38.691 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:15:48.698 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:15:48 + → module: 'TaskScheduler' +2025-10-24 09:15:48.698 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:15:58.706 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:15:58 + → module: 'TaskScheduler' +2025-10-24 09:15:58.706 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:16:08.714 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:16:08 + → module: 'TaskScheduler' +2025-10-24 09:16:08.714 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:16:18.744 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:16:18 + → module: 'TaskScheduler' +2025-10-24 09:16:18.744 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:16:28.753 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:16:28 + → module: 'TaskScheduler' +2025-10-24 09:16:28.753 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:16:38.763 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:16:38 + → module: 'TaskScheduler' +2025-10-24 09:16:38.763 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:16:48.771 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:16:48 + → module: 'TaskScheduler' +2025-10-24 09:16:48.771 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:16:58.779 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:16:58 + → module: 'TaskScheduler' +2025-10-24 09:16:58.779 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:17:08.788 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:17:08 + → module: 'TaskScheduler' +2025-10-24 09:17:08.788 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:17:18.799 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:17:18 + → module: 'TaskScheduler' +2025-10-24 09:17:18.799 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:17:28.806 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:17:28 + → module: 'TaskScheduler' +2025-10-24 09:17:28.806 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:17:38.816 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:17:38 + → module: 'TaskScheduler' +2025-10-24 09:17:38.816 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:17:48.844 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:17:48 + → module: 'TaskScheduler' +2025-10-24 09:17:48.844 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:17:58.852 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:17:58 + → module: 'TaskScheduler' +2025-10-24 09:17:58.852 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:18:08.872 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:18:08 + → module: 'TaskScheduler' +2025-10-24 09:18:08.872 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:18:18.882 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:18:18 + → module: 'TaskScheduler' +2025-10-24 09:18:18.882 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:18:28.888 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:18:28 + → module: 'TaskScheduler' +2025-10-24 09:18:28.889 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:18:38.900 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:18:38 + → module: 'TaskScheduler' +2025-10-24 09:18:38.900 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:18:48.907 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:18:48 + → module: 'TaskScheduler' +2025-10-24 09:18:48.907 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:18:58.919 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:18:58 + → module: 'TaskScheduler' +2025-10-24 09:18:58.919 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:19:08.942 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:19:08 + → module: 'TaskScheduler' +2025-10-24 09:19:08.942 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:19:18.962 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:19:18 + → module: 'TaskScheduler' +2025-10-24 09:19:18.962 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:19:28.972 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:19:28 + → module: 'TaskScheduler' +2025-10-24 09:19:28.972 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:19:38.979 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:19:38 + → module: 'TaskScheduler' +2025-10-24 09:19:38.980 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:19:49.007 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:19:49 + → module: 'TaskScheduler' +2025-10-24 09:19:49.008 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:19:59.018 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:19:59 + → module: 'TaskScheduler' +2025-10-24 09:19:59.018 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:20:09.041 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:20:09 + → module: 'TaskScheduler' +2025-10-24 09:20:09.041 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:20:09.061 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:20:09.069 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 09:20:09.069 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:20:09.070 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 09:20:09.071 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 09:20:09.071 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 09:20:09.074 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 09:20:09.077 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 09:20:09.077 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 09:20:09.078 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 01:09:54 + → module: 'NewsAPIClient' +2025-10-24 09:20:09.078 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 01:09:54 + → module: 'NewsAPIClient' +2025-10-24 09:20:09.078 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 09:20:09.571 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:20:09.595 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:20:09.629 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:20:09.966 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:20:09.968 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 09:20:09.969 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.89秒 + → module: 'NewsAPIClient' +2025-10-24 09:20:09.969 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 09:20:09.970 | DEBUG | rss_subscriptions:235 - 处理条目 1: 美国9月成屋销售量环比上涨1.5% 销售量创7个月新高 + → module: 'NewsAPIClient' +2025-10-24 09:20:09.972 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 09:20:09.974 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 09:20:09.975 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 09:20:09.984 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 09:20:09.985 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 09:20:09.985 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 09:20:09.985 | DEBUG | rss_subscriptions:235 - 处理条目 1: 市场监管执法向私域直播乱象说“不” + → module: 'NewsAPIClient' +2025-10-24 09:20:09.990 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 09:20:09.993 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 09:20:09.994 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 09:20:10.004 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 09:20:10.005 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 09:20:10.007 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 09:20:10.008 | DEBUG | rss_subscriptions:235 - 处理条目 1: 沉痛送别!杨振宁先生遗体告别仪式今日举行 + → module: 'NewsAPIClient' +2025-10-24 09:20:10.013 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 09:20:10.016 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 09:20:10.018 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 09:20:10.027 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 09:20:10.030 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 09:20:10.030 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 09:20:10.035 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 01:15:35 + → module: 'NewsAPIClient' +2025-10-24 09:20:10.035 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 01:15:35 + → module: 'NewsAPIClient' +2025-10-24 09:20:10.036 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.97秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 09:20:10.045 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 09:20:10.045 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:20:19.072 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:20:19 + → module: 'TaskScheduler' +2025-10-24 09:20:19.072 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:20:29.095 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:20:29 + → module: 'TaskScheduler' +2025-10-24 09:20:29.095 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:20:39.102 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:20:39 + → module: 'TaskScheduler' +2025-10-24 09:20:39.102 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:20:49.112 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:20:49 + → module: 'TaskScheduler' +2025-10-24 09:20:49.113 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:20:59.123 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:20:59 + → module: 'TaskScheduler' +2025-10-24 09:20:59.124 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:21:09.134 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:21:09 + → module: 'TaskScheduler' +2025-10-24 09:21:09.134 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:21:19.142 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:21:19 + → module: 'TaskScheduler' +2025-10-24 09:21:19.142 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:21:29.159 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:21:29 + → module: 'TaskScheduler' +2025-10-24 09:21:29.159 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:21:39.185 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:21:39 + → module: 'TaskScheduler' +2025-10-24 09:21:39.186 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:21:49.207 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:21:49 + → module: 'TaskScheduler' +2025-10-24 09:21:49.207 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:21:59.216 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:21:59 + → module: 'TaskScheduler' +2025-10-24 09:21:59.216 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:22:09.225 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:22:09 + → module: 'TaskScheduler' +2025-10-24 09:22:09.225 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:22:19.237 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:22:19 + → module: 'TaskScheduler' +2025-10-24 09:22:19.237 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:22:29.247 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:22:29 + → module: 'TaskScheduler' +2025-10-24 09:22:29.247 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:22:39.254 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:22:39 + → module: 'TaskScheduler' +2025-10-24 09:22:39.254 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:22:49.262 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:22:49 + → module: 'TaskScheduler' +2025-10-24 09:22:49.262 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:22:59.269 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:22:59 + → module: 'TaskScheduler' +2025-10-24 09:22:59.269 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:23:09.295 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:23:09 + → module: 'TaskScheduler' +2025-10-24 09:23:09.295 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:23:19.319 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:23:19 + → module: 'TaskScheduler' +2025-10-24 09:23:19.319 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:23:29.338 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:23:29 + → module: 'TaskScheduler' +2025-10-24 09:23:29.338 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:23:39.346 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:23:39 + → module: 'TaskScheduler' +2025-10-24 09:23:39.346 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:23:49.356 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:23:49 + → module: 'TaskScheduler' +2025-10-24 09:23:49.356 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:23:59.363 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:23:59 + → module: 'TaskScheduler' +2025-10-24 09:23:59.363 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:24:09.372 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:24:09 + → module: 'TaskScheduler' +2025-10-24 09:24:09.373 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:24:19.384 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:24:19 + → module: 'TaskScheduler' +2025-10-24 09:24:19.384 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:24:29.415 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:24:29 + → module: 'TaskScheduler' +2025-10-24 09:24:29.415 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:24:39.440 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:24:39 + → module: 'TaskScheduler' +2025-10-24 09:24:39.441 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:24:49.453 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:24:49 + → module: 'TaskScheduler' +2025-10-24 09:24:49.454 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:24:59.467 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:24:59 + → module: 'TaskScheduler' +2025-10-24 09:24:59.467 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:25:09.495 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:25:09 + → module: 'TaskScheduler' +2025-10-24 09:25:09.496 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:25:09.504 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:25:09.525 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 09:25:09.526 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:25:09.527 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 09:25:09.527 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 09:25:09.527 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 09:25:09.531 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 09:25:09.536 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 09:25:09.537 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 09:25:09.537 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 01:15:35 + → module: 'NewsAPIClient' +2025-10-24 09:25:09.538 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 01:15:35 + → module: 'NewsAPIClient' +2025-10-24 09:25:09.538 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 09:25:09.980 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:25:09.994 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:25:10.071 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:25:10.345 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:25:10.347 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 09:25:10.348 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.81秒 + → module: 'NewsAPIClient' +2025-10-24 09:25:10.348 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 09:25:10.349 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 09:25:10.349 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 09:25:10.350 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 09:25:10.352 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 01:15:35 + → module: 'NewsAPIClient' +2025-10-24 09:25:10.352 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 01:15:35 + → module: 'NewsAPIClient' +2025-10-24 09:25:10.352 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.83秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 09:25:10.386 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 09:25:10.387 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:25:19.529 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:25:19 + → module: 'TaskScheduler' +2025-10-24 09:25:19.529 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:25:29.537 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:25:29 + → module: 'TaskScheduler' +2025-10-24 09:25:29.537 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:25:39.566 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:25:39 + → module: 'TaskScheduler' +2025-10-24 09:25:39.566 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:25:49.577 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:25:49 + → module: 'TaskScheduler' +2025-10-24 09:25:49.577 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:25:59.607 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:25:59 + → module: 'TaskScheduler' +2025-10-24 09:25:59.607 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:26:09.615 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:26:09 + → module: 'TaskScheduler' +2025-10-24 09:26:09.615 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:26:19.623 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:26:19 + → module: 'TaskScheduler' +2025-10-24 09:26:19.623 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:26:29.635 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:26:29 + → module: 'TaskScheduler' +2025-10-24 09:26:29.635 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:26:39.643 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:26:39 + → module: 'TaskScheduler' +2025-10-24 09:26:39.643 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:26:49.665 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:26:49 + → module: 'TaskScheduler' +2025-10-24 09:26:49.665 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:26:59.691 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:26:59 + → module: 'TaskScheduler' +2025-10-24 09:26:59.692 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:27:09.702 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:27:09 + → module: 'TaskScheduler' +2025-10-24 09:27:09.702 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:27:19.710 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:27:19 + → module: 'TaskScheduler' +2025-10-24 09:27:19.710 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:27:29.733 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:27:29 + → module: 'TaskScheduler' +2025-10-24 09:27:29.733 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:27:39.755 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:27:39 + → module: 'TaskScheduler' +2025-10-24 09:27:39.755 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:27:49.775 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:27:49 + → module: 'TaskScheduler' +2025-10-24 09:27:49.775 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:27:59.782 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:27:59 + → module: 'TaskScheduler' +2025-10-24 09:27:59.782 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:28:09.790 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:28:09 + → module: 'TaskScheduler' +2025-10-24 09:28:09.790 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:28:19.799 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:28:19 + → module: 'TaskScheduler' +2025-10-24 09:28:19.799 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:28:29.824 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:28:29 + → module: 'TaskScheduler' +2025-10-24 09:28:29.824 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:28:39.837 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:28:39 + → module: 'TaskScheduler' +2025-10-24 09:28:39.837 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:28:49.846 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:28:49 + → module: 'TaskScheduler' +2025-10-24 09:28:49.846 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:28:59.855 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:28:59 + → module: 'TaskScheduler' +2025-10-24 09:28:59.855 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:29:09.874 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:29:09 + → module: 'TaskScheduler' +2025-10-24 09:29:09.874 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:29:19.884 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:29:19 + → module: 'TaskScheduler' +2025-10-24 09:29:19.884 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:29:29.893 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:29:29 + → module: 'TaskScheduler' +2025-10-24 09:29:29.893 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:29:39.905 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:29:39 + → module: 'TaskScheduler' +2025-10-24 09:29:39.905 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:29:49.912 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:29:49 + → module: 'TaskScheduler' +2025-10-24 09:29:49.912 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:29:59.922 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:29:59 + → module: 'TaskScheduler' +2025-10-24 09:29:59.922 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:30:09.933 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:30:09 + → module: 'TaskScheduler' +2025-10-24 09:30:09.934 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:30:09.956 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:30:09.988 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 09:30:09.989 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:30:09.989 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 09:30:09.989 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 09:30:09.989 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 09:30:09.993 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 09:30:10.014 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 09:30:10.014 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 09:30:10.015 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 01:15:35 + → module: 'NewsAPIClient' +2025-10-24 09:30:10.015 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 01:15:35 + → module: 'NewsAPIClient' +2025-10-24 09:30:10.015 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 09:30:10.545 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:30:10.566 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:30:10.580 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:30:10.903 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:30:10.904 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 09:30:10.905 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.89秒 + → module: 'NewsAPIClient' +2025-10-24 09:30:10.905 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 09:30:10.905 | DEBUG | rss_subscriptions:235 - 处理条目 1: 国家铁路局科技与法制司原副司长曾会欣接受审查调查 + → module: 'NewsAPIClient' +2025-10-24 09:30:10.927 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 09:30:10.929 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 09:30:10.930 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 09:30:10.957 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 09:30:10.958 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 09:30:10.959 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 09:30:10.960 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 09:30:10.962 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 09:30:10.962 | DEBUG | rss_subscriptions:235 - 处理条目 1: 跟着赛事去旅游 广州推出50条全运会特色线路 + → module: 'NewsAPIClient' +2025-10-24 09:30:10.966 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 09:30:10.968 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 09:30:10.969 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 09:30:10.975 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 09:30:10.975 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 09:30:10.976 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 01:26:37 + → module: 'NewsAPIClient' +2025-10-24 09:30:10.976 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 01:26:37 + → module: 'NewsAPIClient' +2025-10-24 09:30:10.977 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.99秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 09:30:11.010 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 09:30:11.011 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:30:19.992 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:30:19 + → module: 'TaskScheduler' +2025-10-24 09:30:19.992 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:30:29.999 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:30:29 + → module: 'TaskScheduler' +2025-10-24 09:30:29.999 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:30:40.018 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:30:40 + → module: 'TaskScheduler' +2025-10-24 09:30:40.018 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:30:50.031 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:30:50 + → module: 'TaskScheduler' +2025-10-24 09:30:50.031 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:31:00.039 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:31:00 + → module: 'TaskScheduler' +2025-10-24 09:31:00.039 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:31:10.046 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:31:10 + → module: 'TaskScheduler' +2025-10-24 09:31:10.046 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:31:20.074 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:31:20 + → module: 'TaskScheduler' +2025-10-24 09:31:20.074 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:31:30.082 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:31:30 + → module: 'TaskScheduler' +2025-10-24 09:31:30.082 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:31:40.111 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:31:40 + → module: 'TaskScheduler' +2025-10-24 09:31:40.112 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:31:50.124 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:31:50 + → module: 'TaskScheduler' +2025-10-24 09:31:50.124 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:32:00.156 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:32:00 + → module: 'TaskScheduler' +2025-10-24 09:32:00.156 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:32:10.164 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:32:10 + → module: 'TaskScheduler' +2025-10-24 09:32:10.164 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:32:20.185 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:32:20 + → module: 'TaskScheduler' +2025-10-24 09:32:20.186 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:32:30.199 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:32:30 + → module: 'TaskScheduler' +2025-10-24 09:32:30.199 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:32:40.206 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:32:40 + → module: 'TaskScheduler' +2025-10-24 09:32:40.207 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:32:50.215 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:32:50 + → module: 'TaskScheduler' +2025-10-24 09:32:50.215 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:33:00.223 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:33:00 + → module: 'TaskScheduler' +2025-10-24 09:33:00.223 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:33:10.232 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:33:10 + → module: 'TaskScheduler' +2025-10-24 09:33:10.232 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:33:20.239 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:33:20 + → module: 'TaskScheduler' +2025-10-24 09:33:20.239 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:33:30.266 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:33:30 + → module: 'TaskScheduler' +2025-10-24 09:33:30.266 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:33:40.295 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:33:40 + → module: 'TaskScheduler' +2025-10-24 09:33:40.295 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:33:50.327 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:33:50 + → module: 'TaskScheduler' +2025-10-24 09:33:50.327 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:34:00.346 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:34:00 + → module: 'TaskScheduler' +2025-10-24 09:34:00.346 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:34:10.379 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:34:10 + → module: 'TaskScheduler' +2025-10-24 09:34:10.380 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:34:20.393 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:34:20 + → module: 'TaskScheduler' +2025-10-24 09:34:20.394 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:34:30.402 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:34:30 + → module: 'TaskScheduler' +2025-10-24 09:34:30.402 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:34:40.412 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:34:40 + → module: 'TaskScheduler' +2025-10-24 09:34:40.412 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:34:50.435 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:34:50 + → module: 'TaskScheduler' +2025-10-24 09:34:50.435 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:35:00.446 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:35:00 + → module: 'TaskScheduler' +2025-10-24 09:35:00.446 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:35:00.454 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:35:00.495 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 09:35:00.496 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:35:00.496 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 09:35:00.497 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 09:35:00.497 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 09:35:00.502 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 09:35:00.506 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 09:35:00.507 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 09:35:00.507 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 01:26:37 + → module: 'NewsAPIClient' +2025-10-24 09:35:00.507 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 01:26:37 + → module: 'NewsAPIClient' +2025-10-24 09:35:00.507 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 09:35:00.937 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:35:00.970 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:35:00.983 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:35:01.303 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:35:01.306 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 09:35:01.306 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.80秒 + → module: 'NewsAPIClient' +2025-10-24 09:35:01.306 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 09:35:01.307 | DEBUG | rss_subscriptions:235 - 处理条目 1: 10月24日央行开展1680亿元7天期逆回购操作 + → module: 'NewsAPIClient' +2025-10-24 09:35:01.311 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 09:35:01.313 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 09:35:01.315 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 09:35:01.323 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 09:35:01.324 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 09:35:01.324 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 09:35:01.325 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 09:35:01.326 | DEBUG | rss_subscriptions:235 - 处理条目 1: 首艘、首颗、首飞!中国制造硬核实力再出圈 连续实现重大突破 + → module: 'NewsAPIClient' +2025-10-24 09:35:01.326 | DEBUG | rss_subscriptions:235 - 处理条目 2: 国家税务总局浙江省税务局原副巡视员吴伟民接受审查调查 + → module: 'NewsAPIClient' +2025-10-24 09:35:01.330 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 09:35:01.331 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 09:35:01.333 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 2 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 09:35:01.345 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 2 + → total_inserted: 2 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 09:35:01.346 | INFO | rss_subscriptions:259 - 成功写入 2/2 条记录 + → module: 'NewsAPIClient' +2025-10-24 09:35:01.346 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 09:35:01.347 | DEBUG | rss_subscriptions:235 - 处理条目 1: 首艘、首颗、首飞!中国制造硬核实力再出圈 连续实现重大突破 + → module: 'NewsAPIClient' +2025-10-24 09:35:01.347 | DEBUG | rss_subscriptions:235 - 处理条目 2: 10月24日央行开展1680亿元7天期逆回购操作 + → module: 'NewsAPIClient' +2025-10-24 09:35:01.347 | DEBUG | rss_subscriptions:235 - 处理条目 3: 国家税务总局浙江省税务局原副巡视员吴伟民接受审查调查 + → module: 'NewsAPIClient' +2025-10-24 09:35:01.351 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 09:35:01.353 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 09:35:01.354 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 3 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 09:35:01.359 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 0 + → error_message: "Duplicate entry '首艘、首颗、首飞!中国制造硬核实力再出圈 连' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '首艘、首颗、首飞!中国制造硬核实力再出圈 连续实现重大突破...', '文章链接': 'http://www.chinanews.com/gn/2025/10-24/10503605.shtml...', '文章摘要': '首艘自研大型出口双燃料客滚船交付...', '发布时间': '2025-10-24 01:29:32...', '来源URL': 'https://w... +2025-10-24 09:35:01.362 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 1 + → error_message: "Duplicate entry '10月24日央行开展1680亿元7天期逆回购操作-2025-10-2' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '10月24日央行开展1680亿元7天期逆回购操作...', '文章链接': 'http://www.chinanews.com/cj/2025/10-24/10503602.shtml...', '文章摘要': '中新网10月24日电 据央行网站消息,2025年10月24日中国人民银行以固定利率、数量招标方式开展了1680亿元7天期逆回购操作。具体情况如下:...', '... +2025-10-24 09:35:01.367 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 2 + → error_message: "Duplicate entry '国家税务总局浙江省税务局原副巡视员吴伟民接å' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '国家税务总局浙江省税务局原副巡视员吴伟民接受审查调查...', '文章链接': 'http://www.chinanews.com/gn/2025/10-24/10503601.shtml...', '文章摘要': '中新网10月24日电 据中央纪委国家监委驻国家税务总局纪检监察组、浙江省纪委监委消息:国家税务总局浙江省税务局原副巡视员吴伟民涉嫌严重违纪违法,目前正接受中... +2025-10-24 09:35:01.367 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 3 + → total_inserted: 0 + → total_duplicates: 3 + → total_failed: 0 + → failed_records_count: 3 +2025-10-24 09:35:01.368 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '首艘、首颗、首飞!中国制造硬核实力再出圈 连' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 1, 'type': 'du... + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '首艘、首颗、首飞!中国制造硬核实力再出圈 连' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '首艘、首颗... +2025-10-24 09:35:01.369 | INFO | rss_subscriptions:259 - 成功写入 0/3 条记录 + → module: 'NewsAPIClient' +2025-10-24 09:35:01.370 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 01:29:32 + → module: 'NewsAPIClient' +2025-10-24 09:35:01.370 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 01:29:32 + → module: 'NewsAPIClient' +2025-10-24 09:35:01.371 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.87秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 09:35:01.396 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 09:35:01.396 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:35:10.498 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:35:10 + → module: 'TaskScheduler' +2025-10-24 09:35:10.498 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:35:20.516 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:35:20 + → module: 'TaskScheduler' +2025-10-24 09:35:20.516 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:35:30.523 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:35:30 + → module: 'TaskScheduler' +2025-10-24 09:35:30.523 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:35:40.532 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:35:40 + → module: 'TaskScheduler' +2025-10-24 09:35:40.532 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:35:50.539 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:35:50 + → module: 'TaskScheduler' +2025-10-24 09:35:50.539 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:36:00.562 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:36:00 + → module: 'TaskScheduler' +2025-10-24 09:36:00.562 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:36:10.570 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:36:10 + → module: 'TaskScheduler' +2025-10-24 09:36:10.570 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:36:20.579 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:36:20 + → module: 'TaskScheduler' +2025-10-24 09:36:20.579 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:36:30.586 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:36:30 + → module: 'TaskScheduler' +2025-10-24 09:36:30.586 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:36:40.594 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:36:40 + → module: 'TaskScheduler' +2025-10-24 09:36:40.594 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:36:50.601 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:36:50 + → module: 'TaskScheduler' +2025-10-24 09:36:50.601 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:37:00.610 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:37:00 + → module: 'TaskScheduler' +2025-10-24 09:37:00.610 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:37:10.618 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:37:10 + → module: 'TaskScheduler' +2025-10-24 09:37:10.618 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:37:20.626 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:37:20 + → module: 'TaskScheduler' +2025-10-24 09:37:20.626 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:37:30.644 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:37:30 + → module: 'TaskScheduler' +2025-10-24 09:37:30.645 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:37:40.653 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:37:40 + → module: 'TaskScheduler' +2025-10-24 09:37:40.653 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:37:50.660 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:37:50 + → module: 'TaskScheduler' +2025-10-24 09:37:50.660 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:38:00.668 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:38:00 + → module: 'TaskScheduler' +2025-10-24 09:38:00.668 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:38:10.677 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:38:10 + → module: 'TaskScheduler' +2025-10-24 09:38:10.677 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:38:20.696 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:38:20 + → module: 'TaskScheduler' +2025-10-24 09:38:20.696 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:38:30.705 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:38:30 + → module: 'TaskScheduler' +2025-10-24 09:38:30.705 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:38:40.735 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:38:40 + → module: 'TaskScheduler' +2025-10-24 09:38:40.735 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:38:50.743 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:38:50 + → module: 'TaskScheduler' +2025-10-24 09:38:50.743 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:39:00.754 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:39:00 + → module: 'TaskScheduler' +2025-10-24 09:39:00.754 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:39:10.761 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:39:10 + → module: 'TaskScheduler' +2025-10-24 09:39:10.761 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:39:20.769 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:39:20 + → module: 'TaskScheduler' +2025-10-24 09:39:20.769 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:39:30.801 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:39:30 + → module: 'TaskScheduler' +2025-10-24 09:39:30.802 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:39:40.809 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:39:40 + → module: 'TaskScheduler' +2025-10-24 09:39:40.809 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:39:50.816 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:39:50 + → module: 'TaskScheduler' +2025-10-24 09:39:50.816 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:40:00.824 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:40:00 + → module: 'TaskScheduler' +2025-10-24 09:40:00.824 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:40:00.834 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:40:00.851 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 09:40:00.852 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:40:00.852 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 09:40:00.852 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 09:40:00.852 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 09:40:00.856 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 09:40:00.877 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 09:40:00.878 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 09:40:00.879 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 01:29:32 + → module: 'NewsAPIClient' +2025-10-24 09:40:00.879 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 01:29:32 + → module: 'NewsAPIClient' +2025-10-24 09:40:00.879 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 09:40:01.362 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:40:01.384 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:40:01.395 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:40:01.702 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:40:01.704 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 09:40:01.705 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.83秒 + → module: 'NewsAPIClient' +2025-10-24 09:40:01.705 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 09:40:01.706 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 09:40:01.707 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 09:40:01.708 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 09:40:01.709 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 01:29:32 + → module: 'NewsAPIClient' +2025-10-24 09:40:01.709 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 01:29:32 + → module: 'NewsAPIClient' +2025-10-24 09:40:01.710 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.86秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 09:40:01.729 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 09:40:01.730 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:40:10.854 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:40:10 + → module: 'TaskScheduler' +2025-10-24 09:40:10.854 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:40:20.862 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:40:20 + → module: 'TaskScheduler' +2025-10-24 09:40:20.862 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:40:30.869 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:40:30 + → module: 'TaskScheduler' +2025-10-24 09:40:30.869 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:40:40.877 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:40:40 + → module: 'TaskScheduler' +2025-10-24 09:40:40.877 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:40:50.886 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:40:50 + → module: 'TaskScheduler' +2025-10-24 09:40:50.886 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:41:00.898 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:41:00 + → module: 'TaskScheduler' +2025-10-24 09:41:00.898 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:41:10.907 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:41:10 + → module: 'TaskScheduler' +2025-10-24 09:41:10.907 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:41:20.934 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:41:20 + → module: 'TaskScheduler' +2025-10-24 09:41:20.934 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:41:30.945 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:41:30 + → module: 'TaskScheduler' +2025-10-24 09:41:30.945 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:41:40.953 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:41:40 + → module: 'TaskScheduler' +2025-10-24 09:41:40.953 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:41:50.986 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:41:50 + → module: 'TaskScheduler' +2025-10-24 09:41:50.986 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:42:00.997 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:42:00 + → module: 'TaskScheduler' +2025-10-24 09:42:00.997 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:42:11.007 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:42:11 + → module: 'TaskScheduler' +2025-10-24 09:42:11.007 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:42:21.015 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:42:21 + → module: 'TaskScheduler' +2025-10-24 09:42:21.015 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:42:31.022 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:42:31 + → module: 'TaskScheduler' +2025-10-24 09:42:31.022 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:42:41.034 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:42:41 + → module: 'TaskScheduler' +2025-10-24 09:42:41.034 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:42:51.044 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:42:51 + → module: 'TaskScheduler' +2025-10-24 09:42:51.044 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:43:01.056 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:43:01 + → module: 'TaskScheduler' +2025-10-24 09:43:01.056 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:43:11.080 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:43:11 + → module: 'TaskScheduler' +2025-10-24 09:43:11.080 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:43:21.111 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:43:21 + → module: 'TaskScheduler' +2025-10-24 09:43:21.111 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:43:31.119 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:43:31 + → module: 'TaskScheduler' +2025-10-24 09:43:31.119 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:43:41.150 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:43:41 + → module: 'TaskScheduler' +2025-10-24 09:43:41.150 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:43:51.158 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:43:51 + → module: 'TaskScheduler' +2025-10-24 09:43:51.158 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:44:01.167 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:44:01 + → module: 'TaskScheduler' +2025-10-24 09:44:01.168 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:44:11.177 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:44:11 + → module: 'TaskScheduler' +2025-10-24 09:44:11.177 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:44:21.184 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:44:21 + → module: 'TaskScheduler' +2025-10-24 09:44:21.185 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:44:31.195 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:44:31 + → module: 'TaskScheduler' +2025-10-24 09:44:31.195 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:44:41.202 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:44:41 + → module: 'TaskScheduler' +2025-10-24 09:44:41.202 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:44:51.213 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:44:51 + → module: 'TaskScheduler' +2025-10-24 09:44:51.213 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:45:01.223 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:45:01 + → module: 'TaskScheduler' +2025-10-24 09:45:01.223 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:45:01.253 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:45:01.299 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 09:45:01.300 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:45:01.300 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 09:45:01.300 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 09:45:01.301 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 09:45:01.305 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 09:45:01.327 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 09:45:01.327 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 09:45:01.328 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 01:29:32 + → module: 'NewsAPIClient' +2025-10-24 09:45:01.328 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 01:29:32 + → module: 'NewsAPIClient' +2025-10-24 09:45:01.329 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 09:45:01.810 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:45:01.851 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:45:01.988 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:45:02.212 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:45:02.215 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 09:45:02.215 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.89秒 + → module: 'NewsAPIClient' +2025-10-24 09:45:02.216 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 09:45:02.218 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 09:45:02.221 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 09:45:02.221 | DEBUG | rss_subscriptions:235 - 处理条目 1: 杨振宁遗体告别仪式在京举行,八宝山革命公墓外排起数十米长队,现场群众含泪相送 + → module: 'NewsAPIClient' +2025-10-24 09:45:02.228 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 09:45:02.230 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 09:45:02.233 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 09:45:02.241 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 09:45:02.241 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 09:45:02.243 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 09:45:02.243 | DEBUG | rss_subscriptions:235 - 处理条目 1: AI“爆炸性渗透”大周期:一场文明范式的迁徙 + → module: 'NewsAPIClient' +2025-10-24 09:45:02.243 | DEBUG | rss_subscriptions:235 - 处理条目 2: 杨振宁遗体告别仪式在京举行,八宝山革命公墓外排起数十米长队,现场群众含泪相送 + → module: 'NewsAPIClient' +2025-10-24 09:45:02.264 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 09:45:02.265 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 09:45:02.266 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 2 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 09:45:02.277 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 1 + → error_message: "Duplicate entry '杨振宁遗体告别仪式在京举行,八宝山革命公墓å' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '杨振宁遗体告别仪式在京举行,八宝山革命公墓外排起数十米长队,现场群众含泪相送...', '文章链接': 'http://www.chinanews.com/gn/2025/10-24/10503608.shtml...', '文章摘要': '10月24日上午,杨振宁遗体告别仪式在北京八宝山革命公墓举行。中国科学院、清华大学毕业生等社会各界人士前往八宝山为其送别。...',... +2025-10-24 09:45:02.277 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 2 + → total_inserted: 1 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-24 09:45:02.278 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '杨振宁遗体告别仪式在京举行,八宝山革命公墓å' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '杨振宁遗体告别仪式在京举行,八宝山革命公墓å' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '杨振宁遗体... +2025-10-24 09:45:02.279 | INFO | rss_subscriptions:259 - 成功写入 1/2 条记录 + → module: 'NewsAPIClient' +2025-10-24 09:45:02.280 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 01:44:16 + → module: 'NewsAPIClient' +2025-10-24 09:45:02.280 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 01:44:16 + → module: 'NewsAPIClient' +2025-10-24 09:45:02.280 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.98秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 09:45:02.288 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 09:45:02.288 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:45:11.302 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:45:11 + → module: 'TaskScheduler' +2025-10-24 09:45:11.302 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:45:21.333 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:45:21 + → module: 'TaskScheduler' +2025-10-24 09:45:21.333 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:45:31.340 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:45:31 + → module: 'TaskScheduler' +2025-10-24 09:45:31.341 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:45:41.354 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:45:41 + → module: 'TaskScheduler' +2025-10-24 09:45:41.354 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:45:51.365 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:45:51 + → module: 'TaskScheduler' +2025-10-24 09:45:51.365 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:46:01.373 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:46:01 + → module: 'TaskScheduler' +2025-10-24 09:46:01.374 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:46:11.381 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:46:11 + → module: 'TaskScheduler' +2025-10-24 09:46:11.381 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:46:21.402 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:46:21 + → module: 'TaskScheduler' +2025-10-24 09:46:21.402 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:46:31.421 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:46:31 + → module: 'TaskScheduler' +2025-10-24 09:46:31.421 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:46:41.429 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:46:41 + → module: 'TaskScheduler' +2025-10-24 09:46:41.429 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:46:51.441 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:46:51 + → module: 'TaskScheduler' +2025-10-24 09:46:51.445 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:47:01.572 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:47:01 + → module: 'TaskScheduler' +2025-10-24 09:47:01.572 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:47:11.581 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:47:11 + → module: 'TaskScheduler' +2025-10-24 09:47:11.581 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:47:21.609 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:47:21 + → module: 'TaskScheduler' +2025-10-24 09:47:21.609 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:47:31.639 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:47:31 + → module: 'TaskScheduler' +2025-10-24 09:47:31.639 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:47:41.647 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:47:41 + → module: 'TaskScheduler' +2025-10-24 09:47:41.647 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:47:51.658 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:47:51 + → module: 'TaskScheduler' +2025-10-24 09:47:51.659 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:48:01.666 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:48:01 + → module: 'TaskScheduler' +2025-10-24 09:48:01.666 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:48:11.688 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:48:11 + → module: 'TaskScheduler' +2025-10-24 09:48:11.688 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:48:21.699 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:48:21 + → module: 'TaskScheduler' +2025-10-24 09:48:21.699 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:48:31.708 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:48:31 + → module: 'TaskScheduler' +2025-10-24 09:48:31.709 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:48:41.717 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:48:41 + → module: 'TaskScheduler' +2025-10-24 09:48:41.717 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:48:51.749 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:48:51 + → module: 'TaskScheduler' +2025-10-24 09:48:51.749 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:49:01.756 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:49:01 + → module: 'TaskScheduler' +2025-10-24 09:49:01.756 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:49:11.780 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:49:11 + → module: 'TaskScheduler' +2025-10-24 09:49:11.780 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:49:21.789 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:49:21 + → module: 'TaskScheduler' +2025-10-24 09:49:21.789 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:49:31.821 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:49:31 + → module: 'TaskScheduler' +2025-10-24 09:49:31.821 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:49:41.851 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:49:41 + → module: 'TaskScheduler' +2025-10-24 09:49:41.851 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:49:51.879 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:49:51 + → module: 'TaskScheduler' +2025-10-24 09:49:51.879 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:50:01.886 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:50:01 + → module: 'TaskScheduler' +2025-10-24 09:50:01.886 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:50:01.895 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:50:01.941 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 09:50:01.941 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:50:01.941 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 09:50:01.941 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 09:50:01.943 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 09:50:01.970 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 09:50:01.987 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 09:50:01.987 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 09:50:01.988 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 01:44:16 + → module: 'NewsAPIClient' +2025-10-24 09:50:01.988 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 01:44:16 + → module: 'NewsAPIClient' +2025-10-24 09:50:01.989 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 09:50:02.518 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:50:02.532 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:50:02.546 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:50:02.890 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:50:02.892 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 09:50:02.893 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.90秒 + → module: 'NewsAPIClient' +2025-10-24 09:50:02.893 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 09:50:02.894 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 09:50:02.895 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 09:50:02.896 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 09:50:02.898 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 01:44:16 + → module: 'NewsAPIClient' +2025-10-24 09:50:02.898 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 01:44:16 + → module: 'NewsAPIClient' +2025-10-24 09:50:02.899 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.96秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 09:50:02.956 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 09:50:02.956 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:50:11.944 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:50:11 + → module: 'TaskScheduler' +2025-10-24 09:50:11.944 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:50:21.975 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:50:21 + → module: 'TaskScheduler' +2025-10-24 09:50:21.975 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:50:31.994 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:50:31 + → module: 'TaskScheduler' +2025-10-24 09:50:31.994 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:50:42.001 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:50:42 + → module: 'TaskScheduler' +2025-10-24 09:50:42.001 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:50:52.021 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:50:52 + → module: 'TaskScheduler' +2025-10-24 09:50:52.021 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:51:02.048 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:51:02 + → module: 'TaskScheduler' +2025-10-24 09:51:02.048 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:51:12.054 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:51:12 + → module: 'TaskScheduler' +2025-10-24 09:51:12.054 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:51:22.062 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:51:22 + → module: 'TaskScheduler' +2025-10-24 09:51:22.062 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:51:32.070 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:51:32 + → module: 'TaskScheduler' +2025-10-24 09:51:32.070 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:51:42.092 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:51:42 + → module: 'TaskScheduler' +2025-10-24 09:51:42.092 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:51:52.122 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:51:52 + → module: 'TaskScheduler' +2025-10-24 09:51:52.122 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:52:02.130 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:52:02 + → module: 'TaskScheduler' +2025-10-24 09:52:02.130 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:52:12.137 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:52:12 + → module: 'TaskScheduler' +2025-10-24 09:52:12.137 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:52:22.146 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:52:22 + → module: 'TaskScheduler' +2025-10-24 09:52:22.146 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:52:32.155 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:52:32 + → module: 'TaskScheduler' +2025-10-24 09:52:32.155 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:52:42.165 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:52:42 + → module: 'TaskScheduler' +2025-10-24 09:52:42.165 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:52:52.195 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:52:52 + → module: 'TaskScheduler' +2025-10-24 09:52:52.195 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:53:02.202 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:53:02 + → module: 'TaskScheduler' +2025-10-24 09:53:02.202 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:53:12.238 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:53:12 + → module: 'TaskScheduler' +2025-10-24 09:53:12.238 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:53:22.247 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:53:22 + → module: 'TaskScheduler' +2025-10-24 09:53:22.247 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:53:32.278 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:53:32 + → module: 'TaskScheduler' +2025-10-24 09:53:32.278 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:53:42.307 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:53:42 + → module: 'TaskScheduler' +2025-10-24 09:53:42.307 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:53:52.344 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:53:52 + → module: 'TaskScheduler' +2025-10-24 09:53:52.345 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:54:02.358 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:54:02 + → module: 'TaskScheduler' +2025-10-24 09:54:02.358 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:54:12.392 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:54:12 + → module: 'TaskScheduler' +2025-10-24 09:54:12.392 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:54:22.401 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:54:22 + → module: 'TaskScheduler' +2025-10-24 09:54:22.401 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:54:32.409 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:54:32 + → module: 'TaskScheduler' +2025-10-24 09:54:32.409 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:54:42.416 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:54:42 + → module: 'TaskScheduler' +2025-10-24 09:54:42.416 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:54:52.427 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:54:52 + → module: 'TaskScheduler' +2025-10-24 09:54:52.427 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:55:02.437 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:55:02 + → module: 'TaskScheduler' +2025-10-24 09:55:02.437 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:55:02.452 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:55:02.464 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 09:55:02.465 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:55:02.465 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 09:55:02.465 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 09:55:02.465 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 09:55:02.489 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 09:55:02.493 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 09:55:02.494 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 09:55:02.494 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 01:44:16 + → module: 'NewsAPIClient' +2025-10-24 09:55:02.494 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 01:44:16 + → module: 'NewsAPIClient' +2025-10-24 09:55:02.495 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 09:55:02.937 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:55:02.961 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:55:02.974 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:55:03.262 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 09:55:03.264 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 09:55:03.264 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.77秒 + → module: 'NewsAPIClient' +2025-10-24 09:55:03.264 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 09:55:03.266 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 09:55:03.267 | DEBUG | rss_subscriptions:235 - 处理条目 1: 长城 Hi4 技术体系斩获“科学技术奖特等奖” 喜报传遍都江堰 + → module: 'NewsAPIClient' +2025-10-24 09:55:03.267 | DEBUG | rss_subscriptions:235 - 处理条目 2: 国家统计局公布10月中旬流通领域重要生产资料市场价格变动情况 + → module: 'NewsAPIClient' +2025-10-24 09:55:03.287 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 09:55:03.289 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 09:55:03.291 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 2 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 09:55:03.320 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 2 + → total_inserted: 2 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 09:55:03.321 | INFO | rss_subscriptions:259 - 成功写入 2/2 条记录 + → module: 'NewsAPIClient' +2025-10-24 09:55:03.322 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 09:55:03.323 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 09:55:03.323 | DEBUG | rss_subscriptions:235 - 处理条目 1: 长城 Hi4 技术体系斩获“科学技术奖特等奖” 喜报传遍都江堰 + → module: 'NewsAPIClient' +2025-10-24 09:55:03.324 | DEBUG | rss_subscriptions:235 - 处理条目 2: 国家统计局公布10月中旬流通领域重要生产资料市场价格变动情况 + → module: 'NewsAPIClient' +2025-10-24 09:55:03.324 | DEBUG | rss_subscriptions:235 - 处理条目 3: 敲黑板!关键词看党的二十届四中全会公报 + → module: 'NewsAPIClient' +2025-10-24 09:55:03.324 | DEBUG | rss_subscriptions:235 - 处理条目 4: 学习新语|党的二十届四中全会公报一图速览 + → module: 'NewsAPIClient' +2025-10-24 09:55:03.327 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 09:55:03.328 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 09:55:03.329 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 4 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 09:55:03.335 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 0 + → error_message: "Duplicate entry '长城 Hi4 技术体系斩获“科学技术奖特等奖” 喜' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '长城 Hi4 技术体系斩获“科学技术奖特等奖” 喜报传遍都江堰...', '文章链接': 'http://www.chinanews.com/cj/2025/10-24/10503606.shtml...', '文章摘要': '2025年10月,长城汽车《混动四驱智能越野系列乘用车关键技术与应用》项目荣获中国汽车工程学会科学技术奖“科技进步奖特等奖”,成为行业内混动领域... +2025-10-24 09:55:03.338 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 1 + → error_message: "Duplicate entry '国家统计局公布10月中旬流通领域重要生产资料å¸' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '国家统计局公布10月中旬流通领域重要生产资料市场价格变动情况...', '文章链接': 'http://www.chinanews.com/cj/2025/10-24/10503607.shtml...', '文章摘要': '中新网10月24日电 据国家统计局网站消息,据对全国流通领域9大类50种重要生产资料市场价格的监测显示,2025年10月中旬与9月下旬相比,17种产... +2025-10-24 09:55:03.349 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 4 + → total_inserted: 2 + → total_duplicates: 2 + → total_failed: 0 + → failed_records_count: 2 +2025-10-24 09:55:03.350 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '长城 Hi4 技术体系斩获“科学技术奖特等奖” 喜' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 1, 'type':... + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '长城 Hi4 技术体系斩获“科学技术奖特等奖” 喜' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '长... +2025-10-24 09:55:03.351 | INFO | rss_subscriptions:259 - 成功写入 2/4 条记录 + → module: 'NewsAPIClient' +2025-10-24 09:55:03.352 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 01:52:13 + → module: 'NewsAPIClient' +2025-10-24 09:55:03.352 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 01:52:13 + → module: 'NewsAPIClient' +2025-10-24 09:55:03.353 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.89秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 09:55:03.372 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 09:55:03.372 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 09:55:12.466 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:55:12 + → module: 'TaskScheduler' +2025-10-24 09:55:12.466 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:55:22.475 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:55:22 + → module: 'TaskScheduler' +2025-10-24 09:55:22.475 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:55:32.482 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:55:32 + → module: 'TaskScheduler' +2025-10-24 09:55:32.482 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:55:42.492 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:55:42 + → module: 'TaskScheduler' +2025-10-24 09:55:42.492 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:55:52.500 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:55:52 + → module: 'TaskScheduler' +2025-10-24 09:55:52.500 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:56:02.508 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:56:02 + → module: 'TaskScheduler' +2025-10-24 09:56:02.508 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:56:12.535 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:56:12 + → module: 'TaskScheduler' +2025-10-24 09:56:12.535 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:56:22.542 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:56:22 + → module: 'TaskScheduler' +2025-10-24 09:56:22.542 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:56:32.552 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:56:32 + → module: 'TaskScheduler' +2025-10-24 09:56:32.553 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:56:42.560 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:56:42 + → module: 'TaskScheduler' +2025-10-24 09:56:42.560 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:56:52.591 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:56:52 + → module: 'TaskScheduler' +2025-10-24 09:56:52.591 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:57:02.600 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:57:02 + → module: 'TaskScheduler' +2025-10-24 09:57:02.600 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:57:12.608 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:57:12 + → module: 'TaskScheduler' +2025-10-24 09:57:12.608 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:57:22.616 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:57:22 + → module: 'TaskScheduler' +2025-10-24 09:57:22.617 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:57:32.624 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:57:32 + → module: 'TaskScheduler' +2025-10-24 09:57:32.624 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:57:42.635 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:57:42 + → module: 'TaskScheduler' +2025-10-24 09:57:42.635 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:57:52.642 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:57:52 + → module: 'TaskScheduler' +2025-10-24 09:57:52.643 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:58:02.655 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:58:02 + → module: 'TaskScheduler' +2025-10-24 09:58:02.656 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:58:12.679 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:58:12 + → module: 'TaskScheduler' +2025-10-24 09:58:12.679 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:58:22.688 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:58:22 + → module: 'TaskScheduler' +2025-10-24 09:58:22.688 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:58:32.699 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:58:32 + → module: 'TaskScheduler' +2025-10-24 09:58:32.699 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:58:42.724 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:58:42 + → module: 'TaskScheduler' +2025-10-24 09:58:42.724 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:58:52.734 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:58:52 + → module: 'TaskScheduler' +2025-10-24 09:58:52.735 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:59:02.745 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:59:02 + → module: 'TaskScheduler' +2025-10-24 09:59:02.746 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:59:12.754 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:59:12 + → module: 'TaskScheduler' +2025-10-24 09:59:12.754 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:59:22.761 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:59:22 + → module: 'TaskScheduler' +2025-10-24 09:59:22.761 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:59:32.769 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:59:32 + → module: 'TaskScheduler' +2025-10-24 09:59:32.769 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:59:42.777 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:59:42 + → module: 'TaskScheduler' +2025-10-24 09:59:42.777 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 09:59:52.789 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 09:59:52 + → module: 'TaskScheduler' +2025-10-24 09:59:52.789 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:00:02.799 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:00:02 + → module: 'TaskScheduler' +2025-10-24 10:00:02.799 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:00:02.829 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:00:02.861 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 10:00:02.861 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:00:02.862 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 10:00:02.862 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 10:00:02.862 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 10:00:02.887 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 10:00:02.891 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 10:00:02.891 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 10:00:02.892 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 01:52:13 + → module: 'NewsAPIClient' +2025-10-24 10:00:02.892 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 01:52:13 + → module: 'NewsAPIClient' +2025-10-24 10:00:02.892 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 10:00:03.310 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:00:03.344 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:00:03.379 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:00:03.815 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:00:03.819 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 10:00:03.819 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.93秒 + → module: 'NewsAPIClient' +2025-10-24 10:00:03.820 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 10:00:03.823 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 10:00:03.826 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 10:00:03.829 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 10:00:03.830 | DEBUG | rss_subscriptions:235 - 处理条目 1: 中新网直播:瞰中国·我的家乡 | 豫章秋水白鹤栖 人生必去是江西 + → module: 'NewsAPIClient' +2025-10-24 10:00:03.836 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 10:00:03.839 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 10:00:03.841 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 10:00:03.852 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 10:00:03.854 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 10:00:03.856 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 01:55:29 + → module: 'NewsAPIClient' +2025-10-24 10:00:03.856 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 01:55:29 + → module: 'NewsAPIClient' +2025-10-24 10:00:03.857 | INFO | task_scheduler:289 - 任务执行完成,耗时: 1.00秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 10:00:03.879 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 10:00:04.091 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:00:12.863 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:00:12 + → module: 'TaskScheduler' +2025-10-24 10:00:12.864 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:00:22.874 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:00:22 + → module: 'TaskScheduler' +2025-10-24 10:00:22.874 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:00:32.882 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:00:32 + → module: 'TaskScheduler' +2025-10-24 10:00:32.883 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:00:42.895 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:00:42 + → module: 'TaskScheduler' +2025-10-24 10:00:42.895 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:00:52.903 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:00:52 + → module: 'TaskScheduler' +2025-10-24 10:00:52.903 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:01:02.911 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:01:02 + → module: 'TaskScheduler' +2025-10-24 10:01:02.911 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:01:12.918 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:01:12 + → module: 'TaskScheduler' +2025-10-24 10:01:12.918 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:01:22.926 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:01:22 + → module: 'TaskScheduler' +2025-10-24 10:01:22.927 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:01:32.935 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:01:32 + → module: 'TaskScheduler' +2025-10-24 10:01:32.935 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:01:42.944 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:01:42 + → module: 'TaskScheduler' +2025-10-24 10:01:42.944 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:01:52.952 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:01:52 + → module: 'TaskScheduler' +2025-10-24 10:01:52.952 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:02:02.983 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:02:02 + → module: 'TaskScheduler' +2025-10-24 10:02:02.983 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:02:12.991 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:02:12 + → module: 'TaskScheduler' +2025-10-24 10:02:12.991 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:02:23.027 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:02:23 + → module: 'TaskScheduler' +2025-10-24 10:02:23.027 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:02:33.087 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:02:33 + → module: 'TaskScheduler' +2025-10-24 10:02:33.087 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:02:43.124 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:02:43 + → module: 'TaskScheduler' +2025-10-24 10:02:43.124 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:02:53.132 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:02:53 + → module: 'TaskScheduler' +2025-10-24 10:02:53.132 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:03:03.142 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:03:03 + → module: 'TaskScheduler' +2025-10-24 10:03:03.142 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:03:13.162 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:03:13 + → module: 'TaskScheduler' +2025-10-24 10:03:13.162 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:03:23.170 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:03:23 + → module: 'TaskScheduler' +2025-10-24 10:03:23.170 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:03:33.179 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:03:33 + → module: 'TaskScheduler' +2025-10-24 10:03:33.179 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:03:43.187 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:03:43 + → module: 'TaskScheduler' +2025-10-24 10:03:43.187 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:03:53.195 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:03:53 + → module: 'TaskScheduler' +2025-10-24 10:03:53.195 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:04:03.203 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:04:03 + → module: 'TaskScheduler' +2025-10-24 10:04:03.203 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:04:13.224 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:04:13 + → module: 'TaskScheduler' +2025-10-24 10:04:13.224 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:04:23.233 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:04:23 + → module: 'TaskScheduler' +2025-10-24 10:04:23.233 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:04:33.240 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:04:33 + → module: 'TaskScheduler' +2025-10-24 10:04:33.241 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:04:43.253 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:04:43 + → module: 'TaskScheduler' +2025-10-24 10:04:43.253 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:04:53.261 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:04:53 + → module: 'TaskScheduler' +2025-10-24 10:04:53.261 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:05:03.269 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:05:03 + → module: 'TaskScheduler' +2025-10-24 10:05:03.270 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:05:03.279 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:05:03.301 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 10:05:03.302 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:05:03.302 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 10:05:03.302 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 10:05:03.303 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 10:05:03.328 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 10:05:03.344 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 10:05:03.344 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 10:05:03.345 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 01:55:29 + → module: 'NewsAPIClient' +2025-10-24 10:05:03.345 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 01:55:29 + → module: 'NewsAPIClient' +2025-10-24 10:05:03.345 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 10:05:03.784 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:05:03.848 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:05:03.868 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:05:04.149 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:05:04.150 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 10:05:04.151 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.80秒 + → module: 'NewsAPIClient' +2025-10-24 10:05:04.151 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 10:05:04.151 | DEBUG | rss_subscriptions:235 - 处理条目 1: “卷尺哥”走红,期待更多善意在平台上汇聚 + → module: 'NewsAPIClient' +2025-10-24 10:05:04.155 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 10:05:04.157 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 10:05:04.158 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 10:05:04.166 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 10:05:04.166 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 10:05:04.167 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 10:05:04.168 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 10:05:04.169 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 10:05:04.171 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 01:58:43 + → module: 'NewsAPIClient' +2025-10-24 10:05:04.171 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 01:58:43 + → module: 'NewsAPIClient' +2025-10-24 10:05:04.171 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.87秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 10:05:04.179 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 10:05:04.179 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:05:13.303 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:05:13 + → module: 'TaskScheduler' +2025-10-24 10:05:13.304 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:05:23.312 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:05:23 + → module: 'TaskScheduler' +2025-10-24 10:05:23.312 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:05:33.319 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:05:33 + → module: 'TaskScheduler' +2025-10-24 10:05:33.319 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:05:43.327 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:05:43 + → module: 'TaskScheduler' +2025-10-24 10:05:43.327 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:05:53.338 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:05:53 + → module: 'TaskScheduler' +2025-10-24 10:05:53.339 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:06:03.348 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:06:03 + → module: 'TaskScheduler' +2025-10-24 10:06:03.348 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:06:13.356 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:06:13 + → module: 'TaskScheduler' +2025-10-24 10:06:13.356 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:06:23.365 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:06:23 + → module: 'TaskScheduler' +2025-10-24 10:06:23.365 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:06:33.389 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:06:33 + → module: 'TaskScheduler' +2025-10-24 10:06:33.389 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:06:43.409 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:06:43 + → module: 'TaskScheduler' +2025-10-24 10:06:43.409 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:06:53.418 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:06:53 + → module: 'TaskScheduler' +2025-10-24 10:06:53.418 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:07:03.427 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:07:03 + → module: 'TaskScheduler' +2025-10-24 10:07:03.427 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:07:13.435 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:07:13 + → module: 'TaskScheduler' +2025-10-24 10:07:13.435 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:07:23.443 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:07:23 + → module: 'TaskScheduler' +2025-10-24 10:07:23.443 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:07:33.451 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:07:33 + → module: 'TaskScheduler' +2025-10-24 10:07:33.451 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:07:43.460 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:07:43 + → module: 'TaskScheduler' +2025-10-24 10:07:43.460 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:07:53.496 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:07:53 + → module: 'TaskScheduler' +2025-10-24 10:07:53.496 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:08:03.504 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:08:03 + → module: 'TaskScheduler' +2025-10-24 10:08:03.504 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:08:13.532 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:08:13 + → module: 'TaskScheduler' +2025-10-24 10:08:13.532 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:08:23.558 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:08:23 + → module: 'TaskScheduler' +2025-10-24 10:08:23.558 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:08:33.567 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:08:33 + → module: 'TaskScheduler' +2025-10-24 10:08:33.567 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:08:43.592 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:08:43 + → module: 'TaskScheduler' +2025-10-24 10:08:43.593 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:08:53.603 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:08:53 + → module: 'TaskScheduler' +2025-10-24 10:08:53.604 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:09:03.617 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:09:03 + → module: 'TaskScheduler' +2025-10-24 10:09:03.617 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:09:13.627 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:09:13 + → module: 'TaskScheduler' +2025-10-24 10:09:13.627 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:09:13.640 | INFO | main:87 - 小时任务统计 + → module: 'Main' + → 总任务数: 12 + → 成功: 12 + → 失败: 0 +2025-10-24 10:09:23.641 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:09:23 + → module: 'TaskScheduler' +2025-10-24 10:09:23.641 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:09:33.649 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:09:33 + → module: 'TaskScheduler' +2025-10-24 10:09:33.649 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:09:43.656 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:09:43 + → module: 'TaskScheduler' +2025-10-24 10:09:43.656 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:09:53.666 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:09:53 + → module: 'TaskScheduler' +2025-10-24 10:09:53.666 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:10:03.674 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:10:03 + → module: 'TaskScheduler' +2025-10-24 10:10:03.674 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:10:03.684 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:10:03.694 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 10:10:03.695 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:10:03.696 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 10:10:03.696 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 10:10:03.696 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 10:10:03.720 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 10:10:03.738 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 10:10:03.738 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 10:10:03.739 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 01:58:43 + → module: 'NewsAPIClient' +2025-10-24 10:10:03.739 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 01:58:43 + → module: 'NewsAPIClient' +2025-10-24 10:10:03.740 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 10:10:04.357 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:10:04.372 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:10:04.385 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:10:04.756 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:10:04.757 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 10:10:04.758 | INFO | rss_subscriptions:305 - 获取完成,耗时: 1.02秒 + → module: 'NewsAPIClient' +2025-10-24 10:10:04.758 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 10:10:04.759 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 10:10:04.761 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 10:10:04.762 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 10:10:04.765 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 01:58:43 + → module: 'NewsAPIClient' +2025-10-24 10:10:04.765 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 01:58:43 + → module: 'NewsAPIClient' +2025-10-24 10:10:04.766 | INFO | task_scheduler:289 - 任务执行完成,耗时: 1.07秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 10:10:04.778 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 10:10:04.779 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:10:13.697 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:10:13 + → module: 'TaskScheduler' +2025-10-24 10:10:13.697 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:10:23.709 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:10:23 + → module: 'TaskScheduler' +2025-10-24 10:10:23.709 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:10:33.739 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:10:33 + → module: 'TaskScheduler' +2025-10-24 10:10:33.739 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:10:43.765 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:10:43 + → module: 'TaskScheduler' +2025-10-24 10:10:43.766 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:10:53.773 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:10:53 + → module: 'TaskScheduler' +2025-10-24 10:10:53.773 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:11:03.794 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:11:03 + → module: 'TaskScheduler' +2025-10-24 10:11:03.794 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:11:13.804 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:11:13 + → module: 'TaskScheduler' +2025-10-24 10:11:13.804 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:11:23.814 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:11:23 + → module: 'TaskScheduler' +2025-10-24 10:11:23.814 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:11:33.837 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:11:33 + → module: 'TaskScheduler' +2025-10-24 10:11:33.837 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:11:43.848 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:11:43 + → module: 'TaskScheduler' +2025-10-24 10:11:43.848 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:11:53.858 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:11:53 + → module: 'TaskScheduler' +2025-10-24 10:11:53.858 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:12:03.880 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:12:03 + → module: 'TaskScheduler' +2025-10-24 10:12:03.880 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:12:13.890 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:12:13 + → module: 'TaskScheduler' +2025-10-24 10:12:13.890 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:12:23.899 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:12:23 + → module: 'TaskScheduler' +2025-10-24 10:12:23.899 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:12:33.907 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:12:33 + → module: 'TaskScheduler' +2025-10-24 10:12:33.907 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:12:43.940 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:12:43 + → module: 'TaskScheduler' +2025-10-24 10:12:43.940 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:12:53.948 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:12:53 + → module: 'TaskScheduler' +2025-10-24 10:12:53.948 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:13:03.959 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:13:03 + → module: 'TaskScheduler' +2025-10-24 10:13:03.959 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:13:13.990 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:13:13 + → module: 'TaskScheduler' +2025-10-24 10:13:13.991 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:13:24.002 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:13:24 + → module: 'TaskScheduler' +2025-10-24 10:13:24.002 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:13:34.022 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:13:34 + → module: 'TaskScheduler' +2025-10-24 10:13:34.022 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:13:44.030 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:13:44 + → module: 'TaskScheduler' +2025-10-24 10:13:44.030 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:13:54.037 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:13:54 + → module: 'TaskScheduler' +2025-10-24 10:13:54.037 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:14:04.047 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:14:04 + → module: 'TaskScheduler' +2025-10-24 10:14:04.048 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:14:14.056 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:14:14 + → module: 'TaskScheduler' +2025-10-24 10:14:14.056 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:14:24.070 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:14:24 + → module: 'TaskScheduler' +2025-10-24 10:14:24.070 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:14:34.087 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:14:34 + → module: 'TaskScheduler' +2025-10-24 10:14:34.087 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:14:44.106 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:14:44 + → module: 'TaskScheduler' +2025-10-24 10:14:44.106 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:14:54.138 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:14:54 + → module: 'TaskScheduler' +2025-10-24 10:14:54.138 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:15:04.147 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:15:04 + → module: 'TaskScheduler' +2025-10-24 10:15:04.148 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:15:04.162 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:15:04.173 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 10:15:04.174 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:15:04.174 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 10:15:04.174 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 10:15:04.175 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 10:15:04.183 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 10:15:04.187 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 10:15:04.187 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 10:15:04.188 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 01:58:43 + → module: 'NewsAPIClient' +2025-10-24 10:15:04.188 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 01:58:43 + → module: 'NewsAPIClient' +2025-10-24 10:15:04.188 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 10:15:04.634 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:15:04.670 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:15:04.681 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:15:04.988 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:15:04.991 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 10:15:04.992 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.80秒 + → module: 'NewsAPIClient' +2025-10-24 10:15:04.992 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 10:15:04.994 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 10:15:04.995 | DEBUG | rss_subscriptions:235 - 处理条目 1: 时政新闻眼丨未来五年怎么干?党的二十届四中全会擘画发展蓝图 + → module: 'NewsAPIClient' +2025-10-24 10:15:05.001 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 10:15:05.007 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 10:15:05.009 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 10:15:05.023 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 10:15:05.024 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 10:15:05.025 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 10:15:05.026 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 10:15:05.027 | DEBUG | rss_subscriptions:235 - 处理条目 1: 美股收涨纳指涨逾200点,油价涨超5% + → module: 'NewsAPIClient' +2025-10-24 10:15:05.027 | DEBUG | rss_subscriptions:235 - 处理条目 2: 时政新闻眼丨未来五年怎么干?党的二十届四中全会擘画发展蓝图 + → module: 'NewsAPIClient' +2025-10-24 10:15:05.046 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 10:15:05.048 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 10:15:05.050 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 2 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 10:15:05.067 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 1 + → error_message: "Duplicate entry '时政新闻眼丨未来五年怎么干?党的二十届四中å' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '时政新闻眼丨未来五年怎么干?党的二十届四中全会擘画发展蓝图...', '文章链接': 'http://www.chinanews.com/gn/2025/10-24/10503625.shtml...', '文章摘要': '10月23日,为期四天的二十届四中全会在北京闭幕。这次全会最重要的一项成果,是审议通过了《中共中央关于制定国民经济和社会发展第十五个五年规划的建议》。... +2025-10-24 10:15:05.068 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 2 + → total_inserted: 1 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-24 10:15:05.069 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '时政新闻眼丨未来五年怎么干?党的二十届四中å' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '时政新闻眼丨未来五年怎么干?党的二十届四中å' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '时政新闻眼... +2025-10-24 10:15:05.070 | INFO | rss_subscriptions:259 - 成功写入 1/2 条记录 + → module: 'NewsAPIClient' +2025-10-24 10:15:05.072 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 02:12:12 + → module: 'NewsAPIClient' +2025-10-24 10:15:05.072 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 02:12:12 + → module: 'NewsAPIClient' +2025-10-24 10:15:05.073 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.90秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 10:15:05.085 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 10:15:05.086 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:15:14.176 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:15:14 + → module: 'TaskScheduler' +2025-10-24 10:15:14.176 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:15:24.184 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:15:24 + → module: 'TaskScheduler' +2025-10-24 10:15:24.184 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:15:34.203 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:15:34 + → module: 'TaskScheduler' +2025-10-24 10:15:34.203 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:15:44.211 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:15:44 + → module: 'TaskScheduler' +2025-10-24 10:15:44.211 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:15:54.220 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:15:54 + → module: 'TaskScheduler' +2025-10-24 10:15:54.220 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:16:04.242 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:16:04 + → module: 'TaskScheduler' +2025-10-24 10:16:04.242 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:16:14.264 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:16:14 + → module: 'TaskScheduler' +2025-10-24 10:16:14.264 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:16:24.294 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:16:24 + → module: 'TaskScheduler' +2025-10-24 10:16:24.295 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:16:34.321 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:16:34 + → module: 'TaskScheduler' +2025-10-24 10:16:34.321 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:16:44.331 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:16:44 + → module: 'TaskScheduler' +2025-10-24 10:16:44.332 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:16:54.364 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:16:54 + → module: 'TaskScheduler' +2025-10-24 10:16:54.364 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:17:04.377 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:17:04 + → module: 'TaskScheduler' +2025-10-24 10:17:04.377 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:17:14.409 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:17:14 + → module: 'TaskScheduler' +2025-10-24 10:17:14.409 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:17:24.418 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:17:24 + → module: 'TaskScheduler' +2025-10-24 10:17:24.418 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:17:34.431 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:17:34 + → module: 'TaskScheduler' +2025-10-24 10:17:34.431 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:17:44.439 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:17:44 + → module: 'TaskScheduler' +2025-10-24 10:17:44.439 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:17:54.448 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:17:54 + → module: 'TaskScheduler' +2025-10-24 10:17:54.448 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:18:04.456 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:18:04 + → module: 'TaskScheduler' +2025-10-24 10:18:04.456 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:18:14.487 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:18:14 + → module: 'TaskScheduler' +2025-10-24 10:18:14.487 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:18:24.494 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:18:24 + → module: 'TaskScheduler' +2025-10-24 10:18:24.494 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:18:34.504 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:18:34 + → module: 'TaskScheduler' +2025-10-24 10:18:34.505 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:18:44.516 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:18:44 + → module: 'TaskScheduler' +2025-10-24 10:18:44.516 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:18:54.524 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:18:54 + → module: 'TaskScheduler' +2025-10-24 10:18:54.524 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:19:04.532 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:19:04 + → module: 'TaskScheduler' +2025-10-24 10:19:04.533 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:19:14.542 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:19:14 + → module: 'TaskScheduler' +2025-10-24 10:19:14.542 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:19:24.551 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:19:24 + → module: 'TaskScheduler' +2025-10-24 10:19:24.551 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:19:34.559 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:19:34 + → module: 'TaskScheduler' +2025-10-24 10:19:34.559 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:19:44.582 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:19:44 + → module: 'TaskScheduler' +2025-10-24 10:19:44.582 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:19:54.591 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:19:54 + → module: 'TaskScheduler' +2025-10-24 10:19:54.591 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:20:04.600 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:20:04 + → module: 'TaskScheduler' +2025-10-24 10:20:04.600 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:20:04.611 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:20:04.620 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 10:20:04.621 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:20:04.621 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 10:20:04.622 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 10:20:04.622 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 10:20:04.651 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 10:20:04.666 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 10:20:04.666 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 10:20:04.667 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 02:12:12 + → module: 'NewsAPIClient' +2025-10-24 10:20:04.667 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 02:12:12 + → module: 'NewsAPIClient' +2025-10-24 10:20:04.667 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 10:20:05.156 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:20:05.178 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:20:05.200 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:20:05.654 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:20:05.656 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 10:20:05.657 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.99秒 + → module: 'NewsAPIClient' +2025-10-24 10:20:05.657 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 10:20:05.658 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 10:20:05.659 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 10:20:05.660 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 10:20:05.661 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 02:12:12 + → module: 'NewsAPIClient' +2025-10-24 10:20:05.661 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 02:12:12 + → module: 'NewsAPIClient' +2025-10-24 10:20:05.663 | INFO | task_scheduler:289 - 任务执行完成,耗时: 1.04秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 10:20:05.672 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 10:20:05.673 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:20:14.624 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:20:14 + → module: 'TaskScheduler' +2025-10-24 10:20:14.624 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:20:24.632 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:20:24 + → module: 'TaskScheduler' +2025-10-24 10:20:24.632 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:20:34.640 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:20:34 + → module: 'TaskScheduler' +2025-10-24 10:20:34.640 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:20:44.664 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:20:44 + → module: 'TaskScheduler' +2025-10-24 10:20:44.664 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:20:54.675 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:20:54 + → module: 'TaskScheduler' +2025-10-24 10:20:54.676 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:21:04.687 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:21:04 + → module: 'TaskScheduler' +2025-10-24 10:21:04.687 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:21:14.707 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:21:14 + → module: 'TaskScheduler' +2025-10-24 10:21:14.707 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:21:24.714 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:21:24 + → module: 'TaskScheduler' +2025-10-24 10:21:24.715 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:21:34.744 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:21:34 + → module: 'TaskScheduler' +2025-10-24 10:21:34.744 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:21:44.751 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:21:44 + → module: 'TaskScheduler' +2025-10-24 10:21:44.751 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:21:54.784 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:21:54 + → module: 'TaskScheduler' +2025-10-24 10:21:54.784 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:22:04.794 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:22:04 + → module: 'TaskScheduler' +2025-10-24 10:22:04.794 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:22:14.821 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:22:14 + → module: 'TaskScheduler' +2025-10-24 10:22:14.821 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:22:24.850 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:22:24 + → module: 'TaskScheduler' +2025-10-24 10:22:24.850 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:22:34.877 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:22:34 + → module: 'TaskScheduler' +2025-10-24 10:22:34.877 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:22:44.886 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:22:44 + → module: 'TaskScheduler' +2025-10-24 10:22:44.886 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:22:54.898 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:22:54 + → module: 'TaskScheduler' +2025-10-24 10:22:54.898 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:23:04.927 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:23:04 + → module: 'TaskScheduler' +2025-10-24 10:23:04.927 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:23:14.937 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:23:14 + → module: 'TaskScheduler' +2025-10-24 10:23:14.937 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:23:24.968 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:23:24 + → module: 'TaskScheduler' +2025-10-24 10:23:24.968 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:23:34.976 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:23:34 + → module: 'TaskScheduler' +2025-10-24 10:23:34.976 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:23:44.986 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:23:44 + → module: 'TaskScheduler' +2025-10-24 10:23:44.986 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:23:54.996 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:23:54 + → module: 'TaskScheduler' +2025-10-24 10:23:54.996 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:24:05.004 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:24:05 + → module: 'TaskScheduler' +2025-10-24 10:24:05.004 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:24:15.031 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:24:15 + → module: 'TaskScheduler' +2025-10-24 10:24:15.031 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:24:25.039 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:24:25 + → module: 'TaskScheduler' +2025-10-24 10:24:25.040 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:24:35.049 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:24:35 + → module: 'TaskScheduler' +2025-10-24 10:24:35.049 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:24:45.058 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:24:45 + → module: 'TaskScheduler' +2025-10-24 10:24:45.059 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:24:55.086 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:24:55 + → module: 'TaskScheduler' +2025-10-24 10:24:55.087 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:25:05.096 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:25:05 + → module: 'TaskScheduler' +2025-10-24 10:25:05.096 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:25:05.122 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:25:05.132 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 10:25:05.133 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:25:05.133 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 10:25:05.133 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 10:25:05.134 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 10:25:05.139 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 10:25:05.159 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 10:25:05.160 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 10:25:05.161 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 02:12:12 + → module: 'NewsAPIClient' +2025-10-24 10:25:05.161 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 02:12:12 + → module: 'NewsAPIClient' +2025-10-24 10:25:05.161 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 10:25:05.774 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:25:05.787 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:25:05.801 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:25:06.175 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:25:06.176 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 10:25:06.176 | INFO | rss_subscriptions:305 - 获取完成,耗时: 1.01秒 + → module: 'NewsAPIClient' +2025-10-24 10:25:06.178 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 10:25:06.178 | DEBUG | rss_subscriptions:235 - 处理条目 1: 郑栅洁:《建议》将“建设现代化产业体系,巩固壮大实体经济根基”摆在战略任务第一位 + → module: 'NewsAPIClient' +2025-10-24 10:25:06.178 | DEBUG | rss_subscriptions:235 - 处理条目 2: 韩文秀:《建议》明确“十五五”时期经济社会发展主要目标 + → module: 'NewsAPIClient' +2025-10-24 10:25:06.178 | DEBUG | rss_subscriptions:235 - 处理条目 3: 新华图讯|中共中央举行新闻发布会 介绍和解读党的二十届四中全会精神 + → module: 'NewsAPIClient' +2025-10-24 10:25:06.178 | DEBUG | rss_subscriptions:235 - 处理条目 4: 中共中央新闻发布会丨“十五五”时期我国发展环境总体判断 + → module: 'NewsAPIClient' +2025-10-24 10:25:06.178 | DEBUG | rss_subscriptions:235 - 处理条目 5: 中共中央新闻发布会丨全会最重要的成果是审议通过了《建议》 + → module: 'NewsAPIClient' +2025-10-24 10:25:06.178 | DEBUG | rss_subscriptions:235 - 处理条目 6: 江金权:《建议》共15个部分61条分为三大板块 + → module: 'NewsAPIClient' +2025-10-24 10:25:06.182 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 10:25:06.184 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 10:25:06.184 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 6 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 10:25:06.223 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 6 + → total_inserted: 6 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 10:25:06.224 | INFO | rss_subscriptions:259 - 成功写入 6/6 条记录 + → module: 'NewsAPIClient' +2025-10-24 10:25:06.224 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 10:25:06.225 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 10:25:06.226 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 10:25:06.227 | DEBUG | rss_subscriptions:235 - 处理条目 1: 新华图讯|中共中央举行新闻发布会 介绍和解读党的二十届四中全会精神 + → module: 'NewsAPIClient' +2025-10-24 10:25:06.227 | DEBUG | rss_subscriptions:235 - 处理条目 2: 中共中央新闻发布会丨“十五五”时期我国发展环境总体判断 + → module: 'NewsAPIClient' +2025-10-24 10:25:06.228 | DEBUG | rss_subscriptions:235 - 处理条目 3: 中共中央新闻发布会丨全会最重要的成果是审议通过了《建议》 + → module: 'NewsAPIClient' +2025-10-24 10:25:06.228 | DEBUG | rss_subscriptions:235 - 处理条目 4: 江金权:《建议》共15个部分61条分为三大板块 + → module: 'NewsAPIClient' +2025-10-24 10:25:06.244 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 10:25:06.245 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 10:25:06.246 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 4 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 10:25:06.251 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 0 + → error_message: "Duplicate entry '新华图讯|中共中央举行新闻发布会 介绍和解读' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '新华图讯|中共中央举行新闻发布会 介绍和解读党的二十届四中全会精神...', '文章链接': 'http://www.chinanews.com/gn/2025/10-24/10503643.shtml...', '文章摘要': '10月24日,中共中央举行新闻发布会,介绍和解读党的二十届四中全会精神。...', '发布时间': '2025-10-24 02:18:15.... +2025-10-24 10:25:06.254 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 1 + → error_message: "Duplicate entry '中共中央新闻发布会丨“十五五”时期我国发展ç' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '中共中央新闻发布会丨“十五五”时期我国发展环境总体判断...', '文章链接': 'http://www.chinanews.com/gn/2025/10-24/10503639.shtml...', '文章摘要': '中共中央今天(24日)上午举行新闻发布会,介绍和解读党的二十届四中全会精神。...', '发布时间': '2025-10-24 02:16:27...',... +2025-10-24 10:25:06.258 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 2 + → error_message: "Duplicate entry '中共中央新闻发布会丨全会最重要的成果是审议é' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '中共中央新闻发布会丨全会最重要的成果是审议通过了《建议》...', '文章链接': 'http://www.chinanews.com/gn/2025/10-24/10503636.shtml...', '文章摘要': '中共中央今天(24日)上午举行新闻发布会,介绍和解读党的二十届四中全会精神。...', '发布时间': '2025-10-24 02:13:45...'... +2025-10-24 10:25:06.262 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 3 + → error_message: "Duplicate entry '江金权:《建议》共15个部分61条分为三大板块-20' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '江金权:《建议》共15个部分61条分为三大板块...', '文章链接': 'http://www.chinanews.com/gn/2025/10-24/10503631.shtml...', '文章摘要': '新华社快讯:江金权:《建议》共15个部分61条分为三大板块...', '发布时间': '2025-10-24 02:12:14...', '来源URL': 'ht... +2025-10-24 10:25:06.264 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 4 + → total_inserted: 0 + → total_duplicates: 4 + → total_failed: 0 + → failed_records_count: 4 +2025-10-24 10:25:06.264 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '新华图讯|中共中央举行新闻发布会 介绍和解读' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 1, 'type': 'du... + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '新华图讯|中共中央举行新闻发布会 介绍和解读' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '新华图讯|... +2025-10-24 10:25:06.265 | INFO | rss_subscriptions:259 - 成功写入 0/4 条记录 + → module: 'NewsAPIClient' +2025-10-24 10:25:06.266 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 02:22:47 + → module: 'NewsAPIClient' +2025-10-24 10:25:06.266 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 02:22:47 + → module: 'NewsAPIClient' +2025-10-24 10:25:06.267 | INFO | task_scheduler:289 - 任务执行完成,耗时: 1.13秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 10:25:06.276 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 10:25:06.277 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:25:15.135 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:25:15 + → module: 'TaskScheduler' +2025-10-24 10:25:15.135 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:25:25.143 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:25:25 + → module: 'TaskScheduler' +2025-10-24 10:25:25.143 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:25:35.151 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:25:35 + → module: 'TaskScheduler' +2025-10-24 10:25:35.152 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:25:45.164 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:25:45 + → module: 'TaskScheduler' +2025-10-24 10:25:45.164 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:25:55.175 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:25:55 + → module: 'TaskScheduler' +2025-10-24 10:25:55.175 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:26:05.201 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:26:05 + → module: 'TaskScheduler' +2025-10-24 10:26:05.202 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:26:15.214 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:26:15 + → module: 'TaskScheduler' +2025-10-24 10:26:15.214 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:26:25.227 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:26:25 + → module: 'TaskScheduler' +2025-10-24 10:26:25.228 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:26:35.240 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:26:35 + → module: 'TaskScheduler' +2025-10-24 10:26:35.240 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:26:45.258 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:26:45 + → module: 'TaskScheduler' +2025-10-24 10:26:45.258 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:26:55.268 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:26:55 + → module: 'TaskScheduler' +2025-10-24 10:26:55.268 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:27:05.275 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:27:05 + → module: 'TaskScheduler' +2025-10-24 10:27:05.275 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:27:15.282 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:27:15 + → module: 'TaskScheduler' +2025-10-24 10:27:15.283 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:27:25.290 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:27:25 + → module: 'TaskScheduler' +2025-10-24 10:27:25.291 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:27:35.304 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:27:35 + → module: 'TaskScheduler' +2025-10-24 10:27:35.304 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:27:45.324 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:27:45 + → module: 'TaskScheduler' +2025-10-24 10:27:45.324 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:27:55.349 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:27:55 + → module: 'TaskScheduler' +2025-10-24 10:27:55.349 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:28:05.358 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:28:05 + → module: 'TaskScheduler' +2025-10-24 10:28:05.358 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:28:15.371 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:28:15 + → module: 'TaskScheduler' +2025-10-24 10:28:15.372 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:28:25.381 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:28:25 + → module: 'TaskScheduler' +2025-10-24 10:28:25.382 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:28:35.395 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:28:35 + → module: 'TaskScheduler' +2025-10-24 10:28:35.395 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:28:45.417 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:28:45 + → module: 'TaskScheduler' +2025-10-24 10:28:45.417 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:28:55.425 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:28:55 + → module: 'TaskScheduler' +2025-10-24 10:28:55.425 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:29:05.456 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:29:05 + → module: 'TaskScheduler' +2025-10-24 10:29:05.456 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:29:15.463 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:29:15 + → module: 'TaskScheduler' +2025-10-24 10:29:15.463 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:29:25.484 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:29:25 + → module: 'TaskScheduler' +2025-10-24 10:29:25.484 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:29:35.494 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:29:35 + → module: 'TaskScheduler' +2025-10-24 10:29:35.494 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:29:45.501 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:29:45 + → module: 'TaskScheduler' +2025-10-24 10:29:45.501 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:29:55.529 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:29:55 + → module: 'TaskScheduler' +2025-10-24 10:29:55.529 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:30:05.555 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:30:05 + → module: 'TaskScheduler' +2025-10-24 10:30:05.555 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:30:05.579 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:30:05.594 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 10:30:05.595 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:30:05.595 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 10:30:05.596 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 10:30:05.596 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 10:30:05.606 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 10:30:05.634 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 10:30:05.634 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 10:30:05.635 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 02:22:47 + → module: 'NewsAPIClient' +2025-10-24 10:30:05.635 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 02:22:47 + → module: 'NewsAPIClient' +2025-10-24 10:30:05.636 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 10:30:06.111 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:30:06.159 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:30:06.185 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:30:06.436 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:30:06.438 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 10:30:06.438 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.80秒 + → module: 'NewsAPIClient' +2025-10-24 10:30:06.439 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 10:30:06.440 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 10:30:06.441 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 10:30:06.441 | DEBUG | rss_subscriptions:235 - 处理条目 1: 美国今年以来已报告超1600例麻疹确诊病例 + → module: 'NewsAPIClient' +2025-10-24 10:30:06.467 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 10:30:06.469 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 10:30:06.471 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 10:30:06.481 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 10:30:06.482 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 10:30:06.483 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 10:30:06.484 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 02:25:21 + → module: 'NewsAPIClient' +2025-10-24 10:30:06.485 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 02:25:21 + → module: 'NewsAPIClient' +2025-10-24 10:30:06.485 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.89秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 10:30:06.494 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 10:30:06.495 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:30:15.598 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:30:15 + → module: 'TaskScheduler' +2025-10-24 10:30:15.598 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:30:25.617 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:30:25 + → module: 'TaskScheduler' +2025-10-24 10:30:25.617 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:30:35.624 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:30:35 + → module: 'TaskScheduler' +2025-10-24 10:30:35.624 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:30:45.634 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:30:45 + → module: 'TaskScheduler' +2025-10-24 10:30:45.634 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:30:55.656 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:30:55 + → module: 'TaskScheduler' +2025-10-24 10:30:55.656 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:31:05.665 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:31:05 + → module: 'TaskScheduler' +2025-10-24 10:31:05.665 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:31:15.676 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:31:15 + → module: 'TaskScheduler' +2025-10-24 10:31:15.676 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:31:25.684 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:31:25 + → module: 'TaskScheduler' +2025-10-24 10:31:25.684 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:31:35.706 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:31:35 + → module: 'TaskScheduler' +2025-10-24 10:31:35.706 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:31:45.717 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:31:45 + → module: 'TaskScheduler' +2025-10-24 10:31:45.717 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:31:55.749 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:31:55 + → module: 'TaskScheduler' +2025-10-24 10:31:55.749 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:32:05.757 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:32:05 + → module: 'TaskScheduler' +2025-10-24 10:32:05.758 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:32:15.770 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:32:15 + → module: 'TaskScheduler' +2025-10-24 10:32:15.770 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:32:25.779 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:32:25 + → module: 'TaskScheduler' +2025-10-24 10:32:25.779 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:32:35.808 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:32:35 + → module: 'TaskScheduler' +2025-10-24 10:32:35.808 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:32:45.835 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:32:45 + → module: 'TaskScheduler' +2025-10-24 10:32:45.835 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:32:55.842 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:32:55 + → module: 'TaskScheduler' +2025-10-24 10:32:55.843 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:33:05.851 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:33:05 + → module: 'TaskScheduler' +2025-10-24 10:33:05.851 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:33:15.864 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:33:15 + → module: 'TaskScheduler' +2025-10-24 10:33:15.864 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:33:25.889 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:33:25 + → module: 'TaskScheduler' +2025-10-24 10:33:25.889 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:33:35.922 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:33:35 + → module: 'TaskScheduler' +2025-10-24 10:33:35.922 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:33:45.930 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:33:45 + → module: 'TaskScheduler' +2025-10-24 10:33:45.930 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:33:55.963 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:33:55 + → module: 'TaskScheduler' +2025-10-24 10:33:55.963 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:34:05.971 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:34:05 + → module: 'TaskScheduler' +2025-10-24 10:34:05.971 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:34:15.983 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:34:15 + → module: 'TaskScheduler' +2025-10-24 10:34:15.983 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:34:25.992 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:34:25 + → module: 'TaskScheduler' +2025-10-24 10:34:25.992 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:34:36.018 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:34:36 + → module: 'TaskScheduler' +2025-10-24 10:34:36.018 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:34:46.026 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:34:46 + → module: 'TaskScheduler' +2025-10-24 10:34:46.026 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:34:56.036 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:34:56 + → module: 'TaskScheduler' +2025-10-24 10:34:56.036 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:35:06.048 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:35:06 + → module: 'TaskScheduler' +2025-10-24 10:35:06.048 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:35:06.075 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:35:06.088 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 10:35:06.089 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:35:06.090 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 10:35:06.090 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 10:35:06.090 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 10:35:06.095 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 10:35:06.098 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 10:35:06.099 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 10:35:06.099 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 02:25:21 + → module: 'NewsAPIClient' +2025-10-24 10:35:06.099 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 02:25:21 + → module: 'NewsAPIClient' +2025-10-24 10:35:06.101 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 10:35:06.579 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:35:06.600 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:35:06.628 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:35:06.939 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:35:06.941 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 10:35:06.941 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.84秒 + → module: 'NewsAPIClient' +2025-10-24 10:35:06.942 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 10:35:06.943 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 10:35:06.944 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 10:35:06.946 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 10:35:06.946 | DEBUG | rss_subscriptions:235 - 处理条目 1: 浙江杭州:2025千岛湖创意生活周开幕 + → module: 'NewsAPIClient' +2025-10-24 10:35:06.947 | DEBUG | rss_subscriptions:235 - 处理条目 2: 2025年法国国际文化遗产沙龙亮相巴黎 + → module: 'NewsAPIClient' +2025-10-24 10:35:06.952 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 10:35:06.955 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 10:35:06.956 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 2 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 10:35:06.971 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 2 + → total_inserted: 2 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 10:35:06.972 | INFO | rss_subscriptions:259 - 成功写入 2/2 条记录 + → module: 'NewsAPIClient' +2025-10-24 10:35:06.973 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 02:29:19 + → module: 'NewsAPIClient' +2025-10-24 10:35:06.973 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 02:29:19 + → module: 'NewsAPIClient' +2025-10-24 10:35:06.974 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.88秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 10:35:06.986 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 10:35:06.987 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:35:16.092 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:35:16 + → module: 'TaskScheduler' +2025-10-24 10:35:16.092 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:35:26.101 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:35:26 + → module: 'TaskScheduler' +2025-10-24 10:35:26.101 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:35:36.130 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:35:36 + → module: 'TaskScheduler' +2025-10-24 10:35:36.130 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:35:46.160 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:35:46 + → module: 'TaskScheduler' +2025-10-24 10:35:46.160 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:35:56.171 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:35:56 + → module: 'TaskScheduler' +2025-10-24 10:35:56.171 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:36:06.179 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:36:06 + → module: 'TaskScheduler' +2025-10-24 10:36:06.179 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:36:16.203 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:36:16 + → module: 'TaskScheduler' +2025-10-24 10:36:16.203 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:36:26.210 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:36:26 + → module: 'TaskScheduler' +2025-10-24 10:36:26.210 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:36:36.244 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:36:36 + → module: 'TaskScheduler' +2025-10-24 10:36:36.244 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:36:46.278 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:36:46 + → module: 'TaskScheduler' +2025-10-24 10:36:46.278 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:36:56.288 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:36:56 + → module: 'TaskScheduler' +2025-10-24 10:36:56.288 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:37:06.296 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:37:06 + → module: 'TaskScheduler' +2025-10-24 10:37:06.296 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:37:16.305 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:37:16 + → module: 'TaskScheduler' +2025-10-24 10:37:16.305 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:37:26.331 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:37:26 + → module: 'TaskScheduler' +2025-10-24 10:37:26.331 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:37:36.339 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:37:36 + → module: 'TaskScheduler' +2025-10-24 10:37:36.339 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:37:46.348 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:37:46 + → module: 'TaskScheduler' +2025-10-24 10:37:46.348 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:37:56.357 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:37:56 + → module: 'TaskScheduler' +2025-10-24 10:37:56.357 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:38:06.368 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:38:06 + → module: 'TaskScheduler' +2025-10-24 10:38:06.368 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:38:16.378 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:38:16 + → module: 'TaskScheduler' +2025-10-24 10:38:16.378 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:38:26.388 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:38:26 + → module: 'TaskScheduler' +2025-10-24 10:38:26.388 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:38:36.421 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:38:36 + → module: 'TaskScheduler' +2025-10-24 10:38:36.422 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:38:46.450 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:38:46 + → module: 'TaskScheduler' +2025-10-24 10:38:46.450 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:38:56.458 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:38:56 + → module: 'TaskScheduler' +2025-10-24 10:38:56.458 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:39:06.468 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:39:06 + → module: 'TaskScheduler' +2025-10-24 10:39:06.468 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:39:16.476 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:39:16 + → module: 'TaskScheduler' +2025-10-24 10:39:16.476 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:39:26.484 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:39:26 + → module: 'TaskScheduler' +2025-10-24 10:39:26.484 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:39:36.491 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:39:36 + → module: 'TaskScheduler' +2025-10-24 10:39:36.491 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:39:46.499 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:39:46 + → module: 'TaskScheduler' +2025-10-24 10:39:46.499 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:39:56.506 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:39:56 + → module: 'TaskScheduler' +2025-10-24 10:39:56.506 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:40:06.514 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:40:06 + → module: 'TaskScheduler' +2025-10-24 10:40:06.514 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:40:06.556 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:40:06.588 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 10:40:06.589 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:40:06.589 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 10:40:06.590 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 10:40:06.590 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 10:40:06.594 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 10:40:06.614 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 10:40:06.614 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 10:40:06.614 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 02:29:19 + → module: 'NewsAPIClient' +2025-10-24 10:40:06.614 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 02:29:19 + → module: 'NewsAPIClient' +2025-10-24 10:40:06.616 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 10:40:07.047 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:40:07.067 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:40:07.078 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:40:07.494 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:40:07.497 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 10:40:07.497 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.88秒 + → module: 'NewsAPIClient' +2025-10-24 10:40:07.497 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 10:40:07.498 | DEBUG | rss_subscriptions:235 - 处理条目 1: 中共中央新闻发布会丨未来10年将再造一个中国高技术产业 + → module: 'NewsAPIClient' +2025-10-24 10:40:07.501 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 10:40:07.504 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 10:40:07.507 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 10:40:07.517 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 10:40:07.518 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 10:40:07.519 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 10:40:07.522 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 10:40:07.522 | DEBUG | rss_subscriptions:235 - 处理条目 1: 海南产经新观察:兴产业,儋州打造海南高质量发展“第三极” + → module: 'NewsAPIClient' +2025-10-24 10:40:07.523 | DEBUG | rss_subscriptions:235 - 处理条目 2: A股三大股指高开,航天板块股票表现亮眼 + → module: 'NewsAPIClient' +2025-10-24 10:40:07.523 | DEBUG | rss_subscriptions:235 - 处理条目 3: 山城直播盛典启幕 “直播+”绘就重庆消费新图景 + → module: 'NewsAPIClient' +2025-10-24 10:40:07.528 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 10:40:07.530 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 10:40:07.532 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 3 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 10:40:07.549 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 3 + → total_inserted: 3 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 10:40:07.550 | INFO | rss_subscriptions:259 - 成功写入 3/3 条记录 + → module: 'NewsAPIClient' +2025-10-24 10:40:07.550 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 10:40:07.551 | DEBUG | rss_subscriptions:235 - 处理条目 1: 山城直播盛典启幕 “直播+”绘就重庆消费新图景 + → module: 'NewsAPIClient' +2025-10-24 10:40:07.551 | DEBUG | rss_subscriptions:235 - 处理条目 2: 港澳平:选举不容干扰破坏 警惕反中乱港势力卷土重来 + → module: 'NewsAPIClient' +2025-10-24 10:40:07.551 | DEBUG | rss_subscriptions:235 - 处理条目 3: 航拍河南南阳五朵山 宛若水墨丹青 + → module: 'NewsAPIClient' +2025-10-24 10:40:07.551 | DEBUG | rss_subscriptions:235 - 处理条目 4: 中共中央新闻发布会丨未来10年将再造一个中国高技术产业 + → module: 'NewsAPIClient' +2025-10-24 10:40:07.569 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 10:40:07.573 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 10:40:07.574 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 4 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 10:40:07.580 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 0 + → error_message: "Duplicate entry '山城直播盛典启幕 “直播+”绘就重庆消费新图æ\x99' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '山城直播盛典启幕 “直播+”绘就重庆消费新图景...', '文章链接': 'http://www.chinanews.com/cj/2025/10-24/10503619.shtml...', '文章摘要': '中新网重庆10月24日电 (记者 刘相琳)2025爱尚重庆·万物直播季23日晚在重庆启幕。10月至11月,重庆将举行“直播+网货产业”溯源探宝、“直播+渝品云集”... +2025-10-24 10:40:07.595 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 3 + → error_message: "Duplicate entry '中共中央新闻发布会丨未来10年将再造一个中国é«' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '中共中央新闻发布会丨未来10年将再造一个中国高技术产业...', '文章链接': 'http://www.chinanews.com/gn/2025/10-24/10503651.shtml...', '文章摘要': '中共中央今天(24日)上午举行新闻发布会,介绍和解读党的二十届四中全会精神。...', '发布时间': '2025-10-24 02:30:11...',... +2025-10-24 10:40:07.596 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 4 + → total_inserted: 2 + → total_duplicates: 2 + → total_failed: 0 + → failed_records_count: 2 +2025-10-24 10:40:07.596 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '山城直播盛典启幕 “直播+”绘就重庆消费新图æ\x99' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 3, 'type'... + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '山城直播盛典启幕 “直播+”绘就重庆消费新图æ\x99' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '... +2025-10-24 10:40:07.598 | INFO | rss_subscriptions:259 - 成功写入 2/4 条记录 + → module: 'NewsAPIClient' +2025-10-24 10:40:07.599 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 02:38:02 + → module: 'NewsAPIClient' +2025-10-24 10:40:07.599 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 02:38:02 + → module: 'NewsAPIClient' +2025-10-24 10:40:07.599 | INFO | task_scheduler:289 - 任务执行完成,耗时: 1.01秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 10:40:07.622 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 10:40:07.623 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:40:16.591 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:40:16 + → module: 'TaskScheduler' +2025-10-24 10:40:16.591 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:40:26.627 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:40:26 + → module: 'TaskScheduler' +2025-10-24 10:40:26.627 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:40:36.658 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:40:36 + → module: 'TaskScheduler' +2025-10-24 10:40:36.658 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:40:46.666 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:40:46 + → module: 'TaskScheduler' +2025-10-24 10:40:46.666 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:40:56.692 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:40:56 + → module: 'TaskScheduler' +2025-10-24 10:40:56.692 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:41:06.700 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:41:06 + → module: 'TaskScheduler' +2025-10-24 10:41:06.701 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:41:16.711 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:41:16 + → module: 'TaskScheduler' +2025-10-24 10:41:16.711 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:41:26.719 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:41:26 + → module: 'TaskScheduler' +2025-10-24 10:41:26.719 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:41:36.730 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:41:36 + → module: 'TaskScheduler' +2025-10-24 10:41:36.730 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:41:46.740 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:41:46 + → module: 'TaskScheduler' +2025-10-24 10:41:46.740 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:41:56.748 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:41:56 + → module: 'TaskScheduler' +2025-10-24 10:41:56.748 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:42:06.755 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:42:06 + → module: 'TaskScheduler' +2025-10-24 10:42:06.755 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:42:16.763 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:42:16 + → module: 'TaskScheduler' +2025-10-24 10:42:16.763 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:42:26.772 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:42:26 + → module: 'TaskScheduler' +2025-10-24 10:42:26.772 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:42:36.780 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:42:36 + → module: 'TaskScheduler' +2025-10-24 10:42:36.780 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:42:46.806 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:42:46 + → module: 'TaskScheduler' +2025-10-24 10:42:46.807 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:42:56.831 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:42:56 + → module: 'TaskScheduler' +2025-10-24 10:42:56.831 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:43:06.858 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:43:06 + → module: 'TaskScheduler' +2025-10-24 10:43:06.858 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:43:16.866 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:43:16 + → module: 'TaskScheduler' +2025-10-24 10:43:16.866 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:43:26.874 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:43:26 + → module: 'TaskScheduler' +2025-10-24 10:43:26.874 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:43:36.882 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:43:36 + → module: 'TaskScheduler' +2025-10-24 10:43:36.882 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:43:46.907 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:43:46 + → module: 'TaskScheduler' +2025-10-24 10:43:46.907 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:43:56.915 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:43:56 + → module: 'TaskScheduler' +2025-10-24 10:43:56.915 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:44:06.924 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:44:06 + → module: 'TaskScheduler' +2025-10-24 10:44:06.924 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:44:16.932 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:44:16 + → module: 'TaskScheduler' +2025-10-24 10:44:16.932 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:44:26.940 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:44:26 + → module: 'TaskScheduler' +2025-10-24 10:44:26.940 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:44:36.950 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:44:36 + → module: 'TaskScheduler' +2025-10-24 10:44:36.950 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:44:46.971 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:44:46 + → module: 'TaskScheduler' +2025-10-24 10:44:46.971 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:44:56.998 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:44:56 + → module: 'TaskScheduler' +2025-10-24 10:44:56.998 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:45:07.005 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:45:07 + → module: 'TaskScheduler' +2025-10-24 10:45:07.005 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:45:07.029 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:45:07.041 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 10:45:07.042 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:45:07.042 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 10:45:07.042 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 10:45:07.043 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 10:45:07.050 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 10:45:07.055 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 10:45:07.055 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 10:45:07.055 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 02:38:02 + → module: 'NewsAPIClient' +2025-10-24 10:45:07.055 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 02:38:02 + → module: 'NewsAPIClient' +2025-10-24 10:45:07.057 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 10:45:07.671 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:45:07.685 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:45:07.708 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:45:08.034 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:45:08.037 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 10:45:08.037 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.98秒 + → module: 'NewsAPIClient' +2025-10-24 10:45:08.038 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 10:45:08.038 | DEBUG | rss_subscriptions:235 - 处理条目 1: “2025生态保护与绿色发展论坛·广州”在暨南大学举办 + → module: 'NewsAPIClient' +2025-10-24 10:45:08.038 | DEBUG | rss_subscriptions:235 - 处理条目 2: 中共中央新闻发布会丨《建议》部署实施一批国家重大科技任务 + → module: 'NewsAPIClient' +2025-10-24 10:45:08.052 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 10:45:08.054 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 10:45:08.055 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 2 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 10:45:08.070 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 2 + → total_inserted: 2 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 10:45:08.070 | INFO | rss_subscriptions:259 - 成功写入 2/2 条记录 + → module: 'NewsAPIClient' +2025-10-24 10:45:08.071 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 10:45:08.071 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 10:45:08.073 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 10:45:08.073 | DEBUG | rss_subscriptions:235 - 处理条目 1: “2025生态保护与绿色发展论坛·广州”在暨南大学举办 + → module: 'NewsAPIClient' +2025-10-24 10:45:08.074 | DEBUG | rss_subscriptions:235 - 处理条目 2: 中共中央新闻发布会丨《建议》部署实施一批国家重大科技任务 + → module: 'NewsAPIClient' +2025-10-24 10:45:08.074 | DEBUG | rss_subscriptions:235 - 处理条目 3: 猫屎咖啡为何珍贵受追捧?最新研究称关键风味在于化学组成 + → module: 'NewsAPIClient' +2025-10-24 10:45:08.077 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 10:45:08.078 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 10:45:08.080 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 3 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 10:45:08.085 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 0 + → error_message: "Duplicate entry '“2025生态保护与绿色发展论坛·广州”在暨南大å' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '“2025生态保护与绿色发展论坛·广州”在暨南大学举办...', '文章链接': 'http://www.chinanews.com/gn/2025/10-24/10503624.shtml...', '文章摘要': '中新网广州10月24日电 (记者 郭军)“2025生态保护与绿色发展论坛·广州”22日在暨南大学举办。...', '发布时间': '2025-10-24 ... +2025-10-24 10:45:08.101 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 1 + → error_message: "Duplicate entry '中共中央新闻发布会丨《建议》部署实施一批国å' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '中共中央新闻发布会丨《建议》部署实施一批国家重大科技任务...', '文章链接': 'http://www.chinanews.com/gn/2025/10-24/10503652.shtml...', '文章摘要': '中共中央今天(24日)上午举行新闻发布会,介绍和解读党的二十届四中全会精神。...', '发布时间': '2025-10-24 02:39:06...'... +2025-10-24 10:45:08.107 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 3 + → total_inserted: 1 + → total_duplicates: 2 + → total_failed: 0 + → failed_records_count: 2 +2025-10-24 10:45:08.108 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '“2025生态保护与绿色发展论坛·广州”在暨南大å' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 1, 'type': ... + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '“2025生态保护与绿色发展论坛·广州”在暨南大å' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '“2... +2025-10-24 10:45:08.110 | INFO | rss_subscriptions:259 - 成功写入 1/3 条记录 + → module: 'NewsAPIClient' +2025-10-24 10:45:08.111 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 02:39:32 + → module: 'NewsAPIClient' +2025-10-24 10:45:08.111 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 02:39:32 + → module: 'NewsAPIClient' +2025-10-24 10:45:08.112 | INFO | task_scheduler:289 - 任务执行完成,耗时: 1.07秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 10:45:08.123 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 10:45:08.124 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:45:17.044 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:45:17 + → module: 'TaskScheduler' +2025-10-24 10:45:17.044 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:45:27.055 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:45:27 + → module: 'TaskScheduler' +2025-10-24 10:45:27.055 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:45:37.063 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:45:37 + → module: 'TaskScheduler' +2025-10-24 10:45:37.063 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:45:47.097 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:45:47 + → module: 'TaskScheduler' +2025-10-24 10:45:47.098 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:45:57.110 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:45:57 + → module: 'TaskScheduler' +2025-10-24 10:45:57.110 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:46:07.118 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:46:07 + → module: 'TaskScheduler' +2025-10-24 10:46:07.118 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:46:17.127 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:46:17 + → module: 'TaskScheduler' +2025-10-24 10:46:17.127 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:46:27.162 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:46:27 + → module: 'TaskScheduler' +2025-10-24 10:46:27.162 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:46:37.180 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:46:37 + → module: 'TaskScheduler' +2025-10-24 10:46:37.180 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:46:47.189 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:46:47 + → module: 'TaskScheduler' +2025-10-24 10:46:47.189 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:46:57.197 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:46:57 + → module: 'TaskScheduler' +2025-10-24 10:46:57.197 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:47:07.221 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:47:07 + → module: 'TaskScheduler' +2025-10-24 10:47:07.221 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:47:17.249 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:47:17 + → module: 'TaskScheduler' +2025-10-24 10:47:17.249 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:47:27.257 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:47:27 + → module: 'TaskScheduler' +2025-10-24 10:47:27.257 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:47:37.274 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:47:37 + → module: 'TaskScheduler' +2025-10-24 10:47:37.274 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:47:47.305 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:47:47 + → module: 'TaskScheduler' +2025-10-24 10:47:47.305 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:47:57.336 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:47:57 + → module: 'TaskScheduler' +2025-10-24 10:47:57.336 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:48:07.366 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:48:07 + → module: 'TaskScheduler' +2025-10-24 10:48:07.367 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:48:17.381 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:48:17 + → module: 'TaskScheduler' +2025-10-24 10:48:17.381 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:48:27.401 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:48:27 + → module: 'TaskScheduler' +2025-10-24 10:48:27.401 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:48:37.424 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:48:37 + → module: 'TaskScheduler' +2025-10-24 10:48:37.424 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:48:47.433 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:48:47 + → module: 'TaskScheduler' +2025-10-24 10:48:47.433 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:48:57.446 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:48:57 + → module: 'TaskScheduler' +2025-10-24 10:48:57.446 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:49:07.455 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:49:07 + → module: 'TaskScheduler' +2025-10-24 10:49:07.456 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:49:17.467 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:49:17 + → module: 'TaskScheduler' +2025-10-24 10:49:17.467 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:49:27.492 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:49:27 + → module: 'TaskScheduler' +2025-10-24 10:49:27.492 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:49:37.500 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:49:37 + → module: 'TaskScheduler' +2025-10-24 10:49:37.501 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:49:47.510 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:49:47 + → module: 'TaskScheduler' +2025-10-24 10:49:47.510 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:49:57.532 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:49:57 + → module: 'TaskScheduler' +2025-10-24 10:49:57.532 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:50:07.540 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:50:07 + → module: 'TaskScheduler' +2025-10-24 10:50:07.540 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:50:07.550 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:50:07.577 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 10:50:07.578 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:50:07.578 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 10:50:07.578 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-24 10:50:07.578 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-24 10:50:07.603 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-24 10:50:07.608 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-24 10:50:07.609 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-24 10:50:07.609 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 02:39:32 + → module: 'NewsAPIClient' +2025-10-24 10:50:07.610 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 02:39:32 + → module: 'NewsAPIClient' +2025-10-24 10:50:07.610 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-24 10:50:08.154 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:50:08.172 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:50:08.225 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:50:08.672 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-24 10:50:08.675 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-24 10:50:08.676 | INFO | rss_subscriptions:305 - 获取完成,耗时: 1.07秒 + → module: 'NewsAPIClient' +2025-10-24 10:50:08.676 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-24 10:50:08.677 | DEBUG | rss_subscriptions:235 - 处理条目 1: 一滴水 如何汇入幸福河湖?——农工党中央主办第五届中国节水论坛综述 + → module: 'NewsAPIClient' +2025-10-24 10:50:08.680 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 10:50:08.684 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 10:50:08.685 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 10:50:08.708 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-24 10:50:08.710 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-24 10:50:08.711 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-24 10:50:08.713 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-24 10:50:08.716 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-24 10:50:08.717 | DEBUG | rss_subscriptions:235 - 处理条目 1: “香港美酒佳肴巡礼”活动开锣 + → module: 'NewsAPIClient' +2025-10-24 10:50:08.718 | DEBUG | rss_subscriptions:235 - 处理条目 2: 沈阳桃仙国际机场冬航季将正式开启 + → module: 'NewsAPIClient' +2025-10-24 10:50:08.718 | DEBUG | rss_subscriptions:235 - 处理条目 3: 多穿点防感冒?感冒从来不是“冻”出来的! + → module: 'NewsAPIClient' +2025-10-24 10:50:08.718 | DEBUG | rss_subscriptions:235 - 处理条目 4: 一滴水 如何汇入幸福河湖?——农工党中央主办第五届中国节水论坛综述 + → module: 'NewsAPIClient' +2025-10-24 10:50:08.719 | DEBUG | rss_subscriptions:235 - 处理条目 5: 西藏尼玛县“当惹雍错”景区推介暨摄影展在拉萨举行 + → module: 'NewsAPIClient' +2025-10-24 10:50:08.719 | DEBUG | rss_subscriptions:235 - 处理条目 6: 香港举办运动科学展 + → module: 'NewsAPIClient' +2025-10-24 10:50:08.725 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-24 10:50:08.729 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-24 10:50:08.731 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 6 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-24 10:50:08.762 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 3 + → error_message: "Duplicate entry '一滴水 如何汇入幸福河湖?——农工党中央主办' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '一滴水 如何汇入幸福河湖?——农工党中央主办第五届中国节水论坛综述...', '文章链接': 'http://www.chinanews.com/gn/2025/10-24/10503637.shtml...', '文章摘要': '“过去,黄河的水质状况并不理想,经过十几年的努力,现在黄河水质连续3年稳定保持Ⅱ类标准。”中国水利水电科学研究院副院长王建华指着幻灯片说到,“... +2025-10-24 10:50:08.774 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 6 + → total_inserted: 5 + → total_duplicates: 1 + → total_failed: 0 + → failed_records_count: 1 +2025-10-24 10:50:08.775 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 3, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '一滴水 如何汇入幸福河湖?——农工党中央主办' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 3, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '一滴水 如何汇入幸福河湖?——农工党中央主办' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '一滴水 如... +2025-10-24 10:50:08.776 | INFO | rss_subscriptions:259 - 成功写入 5/6 条记录 + → module: 'NewsAPIClient' +2025-10-24 10:50:08.777 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-24 02:44:04 + → module: 'NewsAPIClient' +2025-10-24 10:50:08.777 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-24 02:44:04 + → module: 'NewsAPIClient' +2025-10-24 10:50:08.778 | INFO | task_scheduler:289 - 任务执行完成,耗时: 1.20秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-24 10:50:08.787 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-24 10:50:08.788 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-24 10:50:17.579 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:50:17 + → module: 'TaskScheduler' +2025-10-24 10:50:17.579 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:50:27.616 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:50:27 + → module: 'TaskScheduler' +2025-10-24 10:50:27.616 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:50:37.627 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:50:37 + → module: 'TaskScheduler' +2025-10-24 10:50:37.627 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:50:47.638 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:50:47 + → module: 'TaskScheduler' +2025-10-24 10:50:47.638 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:50:57.657 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:50:57 + → module: 'TaskScheduler' +2025-10-24 10:50:57.657 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-24 10:51:07.668 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-24 10:51:07 + → module: 'TaskScheduler' +2025-10-24 10:51:07.668 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:49:18.880 | INFO | task_scheduler:28 - 任务调度器已初始化,最大工作线程数: 5 + → module: 'TaskScheduler' +2025-10-27 10:49:18.881 | INFO | main:18 - 情报系统已初始化(Cron模式) + → module: 'Main' +2025-10-27 10:49:18.882 | DEBUG | main:64 - 信号处理器已注册 + → module: 'Main' +2025-10-27 10:49:18.882 | INFO | main:24 - 系统启动 - 运行在Cron调度模式 + → module: 'Main' +2025-10-27 10:49:20.945 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:49:20 + → module: 'TaskScheduler' +2025-10-27 10:49:20.945 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:49:21.072 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-27 10:49:21.073 | INFO | task_scheduler:165 - 开始执行任务: RSS基于规则数据处理 + → module: 'TaskScheduler' + → task_id: 2 + → task_name: 'RSS基于规则数据处理' +2025-10-27 10:49:21.082 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-27 10:49:21.083 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 2 + → task_name: 'RSS基于规则数据处理' +2025-10-27 10:49:21.103 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-27 10:49:21.103 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-27 10:49:21.103 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 2 + → 成功: 2 + → 失败: 0 +2025-10-27 10:49:21.420 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-27 10:49:21.421 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-27 10:49:21.433 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-27 10:49:21.467 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-27 10:49:21.470 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-27 10:49:21.474 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-24 02:44:04 + → module: 'NewsAPIClient' +2025-10-27 10:49:21.475 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-24 02:44:04 + → module: 'NewsAPIClient' +2025-10-27 10:49:21.479 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-27 10:49:21.727 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'processors.processor_rss_data' + → task_id: 2 +2025-10-27 10:49:21.727 | INFO | processor_rss_data:65 - RSS数据处理器初始化完成 + → module: 'RSSDataProcessor' +2025-10-27 10:49:21.728 | INFO | processor_rss_data:335 - 开始处理RSS数据... + → module: 'RSSDataProcessor' +2025-10-27 10:49:21.728 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT id, 文章标题, 文章摘要, 发布时间, 来源URL, 文章链接\n FROM collector_rss_subscriptions\n WHERE 是否已处理 = 0\n ORDER BY 发布时间 DESC\n LIMIT %s\n ' +2025-10-27 10:49:21.803 | INFO | processor_rss_data:107 - 成功加载 56 条未处理的RSS数据 + → module: 'RSSDataProcessor' +2025-10-27 10:49:21.804 | INFO | processor_rss_data:146 - 成功加载停用词表,共 98 个词 + → module: 'RSSDataProcessor' +2025-10-27 10:49:21.804 | INFO | processor_rss_data:82 - 成功加载汽车后市场关键词,共 37 个 + → module: 'RSSDataProcessor' +2025-10-27 10:49:21.928 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-27 10:49:21.948 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-27 10:49:21.971 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.250 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.257 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.259 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.78秒 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.261 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-27 10:49:22.263 | DEBUG | rss_subscriptions:235 - 处理条目 1: 民政部:前三季度全国共实施临时救助372万人次 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.263 | DEBUG | rss_subscriptions:235 - 处理条目 2: 三峡财务有限责任公司原首席专业师程志明接受审查调查 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.265 | DEBUG | rss_subscriptions:235 - 处理条目 3: 信阳农林学院原党委书记李水接受审查调查 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.266 | DEBUG | rss_subscriptions:235 - 处理条目 4: 围绕“孕妇泰国坠崖”离婚案 最高法解读跨国视频庭审相关问题 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.266 | DEBUG | rss_subscriptions:235 - 处理条目 5: 湖南省湘西自治州人民政府原副州长刘冬生被“双开” + → module: 'NewsAPIClient' +2025-10-27 10:49:22.267 | DEBUG | rss_subscriptions:235 - 处理条目 6: 【央视快评】不断开创以中国式现代化全面推进强国建设、民族复兴伟业新局面 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.269 | DEBUG | rss_subscriptions:235 - 处理条目 7: 学习新语|推动亚太合作,习近平主席生动阐释 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.270 | DEBUG | rss_subscriptions:235 - 处理条目 8: 总书记的人民情怀丨“发展全过程人民民主是中国式现代化的本质要求” + → module: 'NewsAPIClient' +2025-10-27 10:49:22.270 | DEBUG | rss_subscriptions:235 - 处理条目 9: 规则全面优化 第十一批国家组织药品集采今日开标 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.273 | DEBUG | rss_subscriptions:235 - 处理条目 10: 两岸人士谈设立台湾光复纪念日:反“独”促统斗争里程碑 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.277 | DEBUG | rss_subscriptions:235 - 处理条目 11: 李成钢:中美就稳妥解决多项重要经贸议题形成初步共识 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.282 | DEBUG | rss_subscriptions:235 - 处理条目 12: 科技助残业界人士浙江温州论道 点亮残疾人美好生活 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.289 | DEBUG | rss_subscriptions:235 - 处理条目 13: 十四届全国人大常委会举行第五十四次委员长会议 听取有关草案和议案审议情况汇报 赵乐际主持 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.305 | DEBUG | rss_subscriptions:235 - 处理条目 14: 青科会观察:AI连着科学和产业“两个前沿” + → module: 'NewsAPIClient' +2025-10-27 10:49:22.314 | DEBUG | rss_subscriptions:235 - 处理条目 15: 浙西南考古成果新闻发布会举行 先秦考古成果丰硕 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.318 | DEBUG | rss_subscriptions:235 - 处理条目 16: 李成钢:中美就稳妥解决多项重要经贸议题形成初步共识 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.327 | DEBUG | rss_subscriptions:235 - 处理条目 17: 报告:生态犯罪呈现跨国化、复杂化,促使国际执法协作全方位升级 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.332 | DEBUG | rss_subscriptions:235 - 处理条目 18: 上海统一战线举办纪念钱学森归国70周年座谈交流会 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.343 | DEBUG | rss_subscriptions:235 - 处理条目 19: 海峡两岸炎帝神农文化交流大会在湖南炎陵举行 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.344 | DEBUG | rss_subscriptions:235 - 处理条目 20: 总书记的关切·落地的回响 | 保护黑土地 大国粮仓更稳固 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.347 | DEBUG | rss_subscriptions:235 - 处理条目 21: 学习手记|四中全会上,总书记引用古诗宣示反腐决心 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.352 | DEBUG | rss_subscriptions:235 - 处理条目 22: 在沪台胞纪念台湾光复80周年 吴石将军手迹俭德坊“安家” + → module: 'NewsAPIClient' +2025-10-27 10:49:22.360 | DEBUG | rss_subscriptions:235 - 处理条目 23: 十四届全国人大常委会举行第五十四次委员长会议 听取有关草案和议案审议情况汇报 赵乐际主持 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.362 | DEBUG | rss_subscriptions:235 - 处理条目 24: 《寻找祖国三千里》纪录片展映会在台北举行 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.365 | DEBUG | rss_subscriptions:235 - 处理条目 25: 中外女性在上海共话“女性发展与城市未来” + → module: 'NewsAPIClient' +2025-10-27 10:49:22.369 | DEBUG | rss_subscriptions:235 - 处理条目 26: 习近平就泰国王太后诗丽吉逝世向泰国国王哇集拉隆功致唁电 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.370 | DEBUG | rss_subscriptions:235 - 处理条目 27: 2021年以来中国纠正判处监禁刑罚罪犯未交付执行9.6万人 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.377 | DEBUG | rss_subscriptions:235 - 处理条目 28: 习近平就泰国王太后诗丽吉逝世向泰国国王哇集拉隆功致唁电 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.382 | DEBUG | rss_subscriptions:235 - 处理条目 29: 2025年9月全国查处违反中央八项规定精神问题28640起 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.385 | DEBUG | rss_subscriptions:235 - 处理条目 30: 李强赴吉隆坡出席东亚合作领导人系列会议 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.408 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-27 10:49:22.434 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-27 10:49:22.464 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 30 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-27 10:49:22.790 | INFO | processor_rss_data:235 - 数据处理完成,共处理 56 条记录 + → module: 'RSSDataProcessor' +2025-10-27 10:49:22.794 | INFO | processor_rss_data:246 - 过滤出 1 条汽车后市场相关新闻 + → module: 'RSSDataProcessor' +2025-10-27 10:49:22.826 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-27 10:49:22.827 | DEBUG | mysql_agent:640 - 检查表是否存在 + → module: 'MySQLAgent(Windows)' + → 表: 'processed_rss_data' + → 存在: True +2025-10-27 10:49:22.829 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 processed_rss_data + → module: 'MySQLAgent(Windows)' +2025-10-27 10:49:22.830 | DEBUG | mysql_agent:182 - 表 processed_rss_data 包含以下列:['id', '文章标题', '文章摘要', '发布时间', '来源URL', '文章链接', '分词结果', '相关度分数', '是否汽车相关', '处理时间', '创建时间', '更新时间'] + → module: 'MySQLAgent(Windows)' +2025-10-27 10:49:22.832 | DEBUG | mysql_agent:208 - 表 processed_rss_data 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-27 10:49:22.858 | INFO | mysql_agent:294 - 表 processed_rss_data 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-27 10:49:22.858 | INFO | processor_rss_data:283 - 成功保存 1 条处理结果到数据库 + → module: 'RSSDataProcessor' +2025-10-27 10:49:22.894 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 56 +2025-10-27 10:49:22.895 | INFO | processor_rss_data:129 - 成功标记 56 条数据为已处理 + → module: 'RSSDataProcessor' +2025-10-27 10:49:22.895 | INFO | processor_rss_data:372 - RSS数据处理完成 + → module: 'RSSDataProcessor' + → total_articles: 56 + → filtered_articles: 1 + → filter_rate: 0.017857142857142856 + → processing_time: '2025-10-27 10:49:22' + → save_success: True + → mark_success: True +2025-10-27 10:49:22.896 | INFO | task_scheduler:289 - 任务执行完成,耗时: 1.81秒 + → module: 'processors.processor_rss_data' + → task_id: 2 +2025-10-27 10:49:22.905 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-27 10:49:22.905 | INFO | task_scheduler:230 - 任务执行成功: RSS基于规则数据处理 + → module: 'TaskScheduler' + → task_id: 2 + → task_name: 'RSS基于规则数据处理' +2025-10-27 10:49:22.936 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 30 + → total_inserted: 30 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-27 10:49:22.937 | INFO | rss_subscriptions:259 - 成功写入 30/30 条记录 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.937 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-27 10:49:22.938 | DEBUG | rss_subscriptions:235 - 处理条目 1: 前三季度企业创新力度加大 新质生产力加快培育 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.938 | DEBUG | rss_subscriptions:235 - 处理条目 2: 新质生产力绘就都市农业新图景 杨凌农高会西安“专家话题广场”开讲 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.938 | DEBUG | rss_subscriptions:235 - 处理条目 3: “金种子”有“沃土” 湖南宁乡构筑青年创业最优生态 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.938 | DEBUG | rss_subscriptions:235 - 处理条目 4: “卷尺哥”随手拍,市政秒整改:算法也可成城市共治聚合器 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.938 | DEBUG | rss_subscriptions:235 - 处理条目 5: 我国海洋装备产业有效专利量全球占比超五成 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.939 | DEBUG | rss_subscriptions:235 - 处理条目 6: 中国冬春航季启幕 南航加德满都至广州航线客运量同比增长逾五成 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.939 | DEBUG | rss_subscriptions:235 - 处理条目 7: 冬春航季开启 航司密集上新航线 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.939 | DEBUG | rss_subscriptions:235 - 处理条目 8: 国内油价有望再下调,加满一箱或少花11.5元 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.939 | DEBUG | rss_subscriptions:235 - 处理条目 9: 创业板指高开1.75% 存储芯片概念多股涨停 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.939 | DEBUG | rss_subscriptions:235 - 处理条目 10: 国家统计局:1—9月份规模以上工业企业利润加快恢复 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.940 | DEBUG | rss_subscriptions:235 - 处理条目 11: 2025年1—9月份全国规模以上工业企业利润增长3.2% + → module: 'NewsAPIClient' +2025-10-27 10:49:22.940 | DEBUG | rss_subscriptions:235 - 处理条目 12: 沙漠边缘养螃蟹 新疆如何做到“海鲜”大丰收? + → module: 'NewsAPIClient' +2025-10-27 10:49:22.940 | DEBUG | rss_subscriptions:235 - 处理条目 13: 10月27日央行开展3373亿元7天期逆回购操作 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.940 | DEBUG | rss_subscriptions:235 - 处理条目 14: 10月27日人民币对美元中间价报7.0881元 上调47个基点 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.940 | DEBUG | rss_subscriptions:235 - 处理条目 15: 全年粮食有望再获丰收 农业经济形势稳中向好 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.941 | DEBUG | rss_subscriptions:235 - 处理条目 16: 我国稳居全球最大轻工产品生产国和出口国 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.941 | DEBUG | rss_subscriptions:235 - 处理条目 17: 我国海洋装备产业有效专利量全球占比超五成 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.941 | DEBUG | rss_subscriptions:235 - 处理条目 18: 三季度我国冷链物流市场规模持续扩大 基础设施建设稳步推进 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.941 | DEBUG | rss_subscriptions:235 - 处理条目 19: 从全球最大汽车市场的“小角色”到“主导者”美媒关注中国汽车企业崛起之路 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.942 | DEBUG | rss_subscriptions:235 - 处理条目 20: A股最大市值医疗服务公司前三季净利同比增逾84% + → module: 'NewsAPIClient' +2025-10-27 10:49:22.942 | DEBUG | rss_subscriptions:235 - 处理条目 21: 广交会观察:共建“一带一路”市场升温 中企瞄准商机觅订单 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.942 | DEBUG | rss_subscriptions:235 - 处理条目 22: 资源优势变产业优势 杨凌农高会上安康绽放“硒”引力 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.943 | DEBUG | rss_subscriptions:235 - 处理条目 23: 杨凌猕猴桃探路“零损伤”分选 破解即食果品供应难题 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.943 | DEBUG | rss_subscriptions:235 - 处理条目 24: 上市公司看封关:“助力海南打造空天信息产业生态” + → module: 'NewsAPIClient' +2025-10-27 10:49:22.943 | DEBUG | rss_subscriptions:235 - 处理条目 25: 海内外38个优秀区块链应用项目在沪展开角逐 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.943 | DEBUG | rss_subscriptions:235 - 处理条目 26: 全国民航开启冬春航季:航班量稳增 国内外航线网络全面拓展 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.944 | DEBUG | rss_subscriptions:235 - 处理条目 27: 福建首条第五航权客运航线开通 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.944 | DEBUG | rss_subscriptions:235 - 处理条目 28: 中国国际广告节连续五年落地北京海淀 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.944 | DEBUG | rss_subscriptions:235 - 处理条目 29: (走进中国乡村)西藏羊湖日托寺“爆火”撬动当地旅游经济 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.944 | DEBUG | rss_subscriptions:235 - 处理条目 30: 杨凌农高会观察:“新农具”撑起智慧农业新引擎 + → module: 'NewsAPIClient' +2025-10-27 10:49:22.961 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-27 10:49:22.964 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-27 10:49:22.966 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 30 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-27 10:49:23.126 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 30 + → total_inserted: 30 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-27 10:49:23.127 | INFO | rss_subscriptions:259 - 成功写入 30/30 条记录 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.127 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-27 10:49:23.128 | DEBUG | rss_subscriptions:235 - 处理条目 1: 特朗普称启程去日本 美媒:一场对高市早苗的关键考验 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.128 | DEBUG | rss_subscriptions:235 - 处理条目 2: 以色列袭击黎巴嫩多地致三人死亡 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.128 | DEBUG | rss_subscriptions:235 - 处理条目 3: 库尔德工人党宣布其武装力量撤出土耳其 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.128 | DEBUG | rss_subscriptions:235 - 处理条目 4: 2架美军机在南海相继坠毁 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.128 | DEBUG | rss_subscriptions:235 - 处理条目 5: 以色列空袭黎巴嫩致3死 联黎部队维和人员遭以军袭击 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.128 | DEBUG | rss_subscriptions:235 - 处理条目 6: 普京宣布导弹“海燕”试验完成,俄方确认“已通报美国” + → module: 'NewsAPIClient' +2025-10-27 10:49:23.129 | DEBUG | rss_subscriptions:235 - 处理条目 7: 印中恢复直航航班 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.129 | DEBUG | rss_subscriptions:235 - 处理条目 8: 美媒:2架美军机相继坠入南海海域 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.129 | DEBUG | rss_subscriptions:235 - 处理条目 9: 两架美军机在南海相继坠毁 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.129 | DEBUG | rss_subscriptions:235 - 处理条目 10: 巴西总统卢拉称与特朗普进行了富有建设性的会谈,将就关税谈判 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.129 | DEBUG | rss_subscriptions:235 - 处理条目 11: 政府“停摆”持续 美低收入人群食品援助将于11月1日停止 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.130 | DEBUG | rss_subscriptions:235 - 处理条目 12: 北美票房:《链锯人:蕾洁篇》首映拔头筹 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.130 | DEBUG | rss_subscriptions:235 - 处理条目 13: 法国卢浮宫盗窃案调查取得进展 已有涉案嫌犯被捕 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.130 | DEBUG | rss_subscriptions:235 - 处理条目 14: 美政府“停摆”致空管人员短缺 美国超5900个航班延误 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.130 | DEBUG | rss_subscriptions:235 - 处理条目 15: 俄美领导人布达佩斯会晤为何被“推迟”?俄外长披露沟通细节 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.131 | DEBUG | rss_subscriptions:235 - 处理条目 16: 内塔尼亚胡:以色列将决定加沙“国际部队”构成 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.131 | DEBUG | rss_subscriptions:235 - 处理条目 17: 俄外长:关于普京与特朗普会晤的倡议依然有效 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.131 | DEBUG | rss_subscriptions:235 - 处理条目 18: 东帝汶附近海域发生6.2级地震 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.132 | DEBUG | rss_subscriptions:235 - 处理条目 19: 第47届东盟峰会在马来西亚开幕 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.132 | DEBUG | rss_subscriptions:235 - 处理条目 20: 东帝汶正式成为东盟第11个成员国 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.132 | DEBUG | rss_subscriptions:235 - 处理条目 21: 柬埔寨泰国在马来西亚签署和平联合声明 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.132 | DEBUG | rss_subscriptions:235 - 处理条目 22: 普京宣布“海燕”核动力巡航导弹关键试验完成 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.132 | DEBUG | rss_subscriptions:235 - 处理条目 23: 中国驻欧盟使团和驻比利时使馆举办纪念台湾光复80周年座谈会 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.133 | DEBUG | rss_subscriptions:235 - 处理条目 24: 中美在马来西亚吉隆坡举行经贸磋商 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.133 | DEBUG | rss_subscriptions:235 - 处理条目 25: 乌克兰首都基辅遇袭已致5人死亡 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.133 | DEBUG | rss_subscriptions:235 - 处理条目 26: 德国侨界举办“台湾光复纪念日”座谈会 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.133 | DEBUG | rss_subscriptions:235 - 处理条目 27: 卢浮宫抢劫案两名涉案嫌疑人已被捕 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.134 | DEBUG | rss_subscriptions:235 - 处理条目 28: 中国与德国/欧洲合作圆桌会在柏林举行 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.134 | DEBUG | rss_subscriptions:235 - 处理条目 29: “俄罗斯人希望拥有三个孩子” 普京指示发展托儿所制度 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.134 | DEBUG | rss_subscriptions:235 - 处理条目 30: “2025丝绸之路周”在巴西收官 博物馆馆长们惊赞“太美了” + → module: 'NewsAPIClient' +2025-10-27 10:49:23.149 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-27 10:49:23.151 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-27 10:49:23.152 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 30 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-27 10:49:23.313 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 30 + → total_inserted: 30 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-27 10:49:23.314 | INFO | rss_subscriptions:259 - 成功写入 30/30 条记录 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.314 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-27 10:49:23.315 | DEBUG | rss_subscriptions:235 - 处理条目 1: 国际足联宣布将举办新赛事国际足联东盟杯 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.315 | DEBUG | rss_subscriptions:235 - 处理条目 2: 中外媒体探访广西南宁:向“新”逐“智”迸发新活力 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.315 | DEBUG | rss_subscriptions:235 - 处理条目 3: 一招一式悟太极 武当山成世界级“身心驿站” + → module: 'NewsAPIClient' +2025-10-27 10:49:23.315 | DEBUG | rss_subscriptions:235 - 处理条目 4: 针对“孕妇泰国坠崖”离婚案,最高法最新回应 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.316 | DEBUG | rss_subscriptions:235 - 处理条目 5: 2025中乙联赛收官 广西恒宸捧杯 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.316 | DEBUG | rss_subscriptions:235 - 处理条目 6: 广西梧州稻浪金黄 骑行队伍穿梭享丰景 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.316 | DEBUG | rss_subscriptions:235 - 处理条目 7: 前三季度企业创新力度加大 新质生产力加快培育 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.316 | DEBUG | rss_subscriptions:235 - 处理条目 8: 民政部:前三季度全国共实施临时救助372万人次 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.316 | DEBUG | rss_subscriptions:235 - 处理条目 9: 2025广东环云开山越野赛在信宜市开跑 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.317 | DEBUG | rss_subscriptions:235 - 处理条目 10: 新质生产力绘就都市农业新图景 杨凌农高会西安“专家话题广场”开讲 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.317 | DEBUG | rss_subscriptions:235 - 处理条目 11: 辽宁铁人队提前两轮锁定中甲冠军冲超成功 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.317 | DEBUG | rss_subscriptions:235 - 处理条目 12: “金种子”有“沃土” 湖南宁乡构筑青年创业最优生态 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.317 | DEBUG | rss_subscriptions:235 - 处理条目 13: “卷尺哥”随手拍,市政秒整改:算法也可成城市共治聚合器 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.317 | DEBUG | rss_subscriptions:235 - 处理条目 14: 特朗普称启程去日本 美媒:一场对高市早苗的关键考验 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.318 | DEBUG | rss_subscriptions:235 - 处理条目 15: 民政部:正试点向中度以上失能老年人发放养老服务消费补贴 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.318 | DEBUG | rss_subscriptions:235 - 处理条目 16: 我国海洋装备产业有效专利量全球占比超五成 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.318 | DEBUG | rss_subscriptions:235 - 处理条目 17: 重度脑瘫女孩郭佳云:步步生花 用热爱照亮同路人 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.318 | DEBUG | rss_subscriptions:235 - 处理条目 18: 中国冬春航季启幕 南航加德满都至广州航线客运量同比增长逾五成 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.319 | DEBUG | rss_subscriptions:235 - 处理条目 19: 【光明论坛】加快高水平科技自立自强 引领发展新质生产力 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.319 | DEBUG | rss_subscriptions:235 - 处理条目 20: 广西贺州半程马拉松吸引上万跑者 人形机器人登场助阵 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.319 | DEBUG | rss_subscriptions:235 - 处理条目 21: 十五运会和残特奥会吉祥物扮靓广州街头 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.320 | DEBUG | rss_subscriptions:235 - 处理条目 22: 三峡财务有限责任公司原首席专业师程志明接受审查调查 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.320 | DEBUG | rss_subscriptions:235 - 处理条目 23: 以色列袭击黎巴嫩多地致三人死亡 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.320 | DEBUG | rss_subscriptions:235 - 处理条目 24: 2026年度中央机关公开遴选和公开选调公务员报名即将开始 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.320 | DEBUG | rss_subscriptions:235 - 处理条目 25: 库尔德工人党宣布其武装力量撤出土耳其 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.321 | DEBUG | rss_subscriptions:235 - 处理条目 26: 信阳农林学院原党委书记李水接受审查调查 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.321 | DEBUG | rss_subscriptions:235 - 处理条目 27: 围绕“孕妇泰国坠崖”离婚案 最高法解读跨国视频庭审相关问题 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.321 | DEBUG | rss_subscriptions:235 - 处理条目 28: 色彩缤纷 南京农业大学菊花基地“上新” + → module: 'NewsAPIClient' +2025-10-27 10:49:23.322 | DEBUG | rss_subscriptions:235 - 处理条目 29: 河南新蔡县一招聘岗位专业设置不当 官方:已责成纪委调查 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.322 | DEBUG | rss_subscriptions:235 - 处理条目 30: 南京高校千余“银发”齐聚一堂健身展风采 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.324 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-27 10:49:23.326 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-27 10:49:23.327 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 30 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-27 10:49:23.362 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 6 + → error_message: "Duplicate entry '前三季度企业创新力度加大 新质生产力加快培育' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '前三季度企业创新力度加大 新质生产力加快培育...', '文章链接': 'http://www.chinanews.com/cj/2025/10-27/10505025.shtml...', '文章摘要': '央视网消息(新闻联播):国家税务总局发布的最新增值税发票数据显示,今年前三季度,全国企业购进研发和技术服务金额同比增长6.1%,研发创新力度持续加大。同时,科技资源... +2025-10-27 10:49:23.365 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 7 + → error_message: "Duplicate entry '民政部:前三季度全国共实施临时救助372万人次-' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '民政部:前三季度全国共实施临时救助372万人次...', '文章链接': 'http://www.chinanews.com/gn/2025/10-27/10505016.shtml...', '文章摘要': '中新网10月27日电 民政部27日举行第四季度例行新闻发布会,通报第三季度民政重点工作进展情况。民政部新闻发言人李婉丽在会上指出,今年1-9月,全国共实施临时救助... +2025-10-27 10:49:23.372 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 9 + → error_message: "Duplicate entry '新质生产力绘就都市农业新图景 杨凌农高会西安' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '新质生产力绘就都市农业新图景 杨凌农高会西安“专家话题广场”开讲...', '文章链接': 'http://www.chinanews.com/cj/2025/10-27/10504993.shtml...', '文章摘要': '中新网陕西杨凌10月27日电 (记者 阿琳娜)第32届中国杨凌农业高新科技成果博览会期间,以“新质生产力重构都市现代农业”为主题的西安都市现代农... +2025-10-27 10:49:23.380 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 11 + → error_message: "Duplicate entry '“金种子”有“沃土” 湖南宁乡构筑青年创业最' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '“金种子”有“沃土” 湖南宁乡构筑青年创业最优生态...', '文章链接': 'http://www.chinanews.com/cj/2025/10-27/10504989.shtml...', '文章摘要': '中新网长沙10月27日电 (刘曼 李向)10月26日,“金种子沃土杯”2025年湖南宁乡市大学生创业大赛决赛落幕。来自全球知名高校的50个大学生创业团队激烈角... +2025-10-27 10:49:23.383 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 12 + → error_message: "Duplicate entry '“卷尺哥”随手拍,市政秒整改:算法也可成城å' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '“卷尺哥”随手拍,市政秒整改:算法也可成城市共治聚合器...', '文章链接': 'http://www.chinanews.com/cj/2025/10-27/10504973.shtml...', '文章摘要': '深圳网友“卷尺哥”火了。据多家媒体报道,过去两年多来,“卷尺哥”随身携带卷尺,穿梭在深圳大街小巷,用精准实测记录下人行道限宽柱过窄、井盖凸起、危墙松动等问... +2025-10-27 10:49:23.386 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 13 + → error_message: "Duplicate entry '特朗普称启程去日本 美媒:一场对高市早苗的关' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '特朗普称启程去日本 美媒:一场对高市早苗的关键考验...', '文章链接': 'http://www.chinanews.com/gj/2025/10-27/10505018.shtml...', '文章摘要': '中新网10月27日电 当地时间27日,美国总统特朗普在社交媒体上发文称,他刚离开马来西亚,将动身去日本。...', '发布时间': '2025-10-27 0... +2025-10-27 10:49:23.393 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 15 + → error_message: "Duplicate entry '我国海洋装备产业有效专利量全球占比超五成-202' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '我国海洋装备产业有效专利量全球占比超五成...', '文章链接': 'http://www.chinanews.com/cj/2025/10-27/10505015.shtml...', '文章摘要': '本报北京10月26日电 (记者谷业凯)《全球海洋装备产业专利发展报告(2025)》在近日举行的第三届崖州湾知识产权论坛上发布。报告显示,截至目前,全球海洋装备产业有效... +2025-10-27 10:49:23.402 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 17 + → error_message: "Duplicate entry '中国冬春航季启幕 南航加德满都至广州航线客运' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '中国冬春航季启幕 南航加德满都至广州航线客运量同比增长逾五成...', '文章链接': 'http://www.chinanews.com/cj/2025/10-27/10504990.shtml...', '文章摘要': '中新网加德满都10月27日电 (记者 崔楠)自10月26日起,中国民航正式执行2025年至2026年冬春航季航班计划。中国南方航空加德满都至广州航线... +2025-10-27 10:49:23.422 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 21 + → error_message: "Duplicate entry '三峡财务有限责任公司原首席专业师程志明接受å' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '三峡财务有限责任公司原首席专业师程志明接受审查调查...', '文章链接': 'http://www.chinanews.com/gn/2025/10-27/10505004.shtml...', '文章摘要': '中新网10月27日电 据中央纪委国家监委驻中国长江三峡集团有限公司纪检监察组、湖北省纪委监委消息,三峡财务有限责任公司原首席专业师程志明涉嫌严重违纪违法,目前... +2025-10-27 10:49:23.425 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 22 + → error_message: "Duplicate entry '以色列袭击黎巴嫩多地致三人死亡-2025-10-27 02:16:2' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '以色列袭击黎巴嫩多地致三人死亡...', '文章链接': 'http://www.chinanews.com/gj/2025/10-27/10504975.shtml...', '文章摘要': '中新社北京10月27日电 综合消息:黎巴嫩卫生部当地时间26日表示,以色列当天袭击黎巴嫩南部和东部,造成三人死亡。以色列国防军同日称,消灭了两名黎巴嫩真主党成员。...', '发... +2025-10-27 10:49:23.435 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 24 + → error_message: "Duplicate entry '库尔德工人党宣布其武装力量撤出土耳其-2025-10-2' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '库尔德工人党宣布其武装力量撤出土耳其...', '文章链接': 'http://www.chinanews.com/gj/2025/10-27/10504974.shtml...', '文章摘要': '中新社北京10月27日电 安卡拉消息:据土耳其阿纳多卢通讯社报道,库尔德工人党26日发表声明,宣布撤出其在土耳其境内的全部武装力量。...', '发布时间': '2025... +2025-10-27 10:49:23.439 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 25 + → error_message: "Duplicate entry '信阳农林学院原党委书记李水接受审查调查-2025-1' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '信阳农林学院原党委书记李水接受审查调查...', '文章链接': 'http://www.chinanews.com/gn/2025/10-27/10505001.shtml...', '文章摘要': '中新网10月27日电 据河南省纪委监委消息,信阳农林学院原党委书记李水涉嫌严重违纪违法,主动投案,目前正接受河南省纪委监委纪律审查和监察调查。...', '发布时间': ... +2025-10-27 10:49:23.442 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 26 + → error_message: "Duplicate entry '围绕“孕妇泰国坠崖”离婚案 最高法解读跨国视' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '围绕“孕妇泰国坠崖”离婚案 最高法解读跨国视频庭审相关问题...', '文章链接': 'http://www.chinanews.com/gn/2025/10-27/10504999.shtml...', '文章摘要': '中新网10月27日电 据最高法微博消息,27日,最高法院国际合作局负责人就跨国视频庭审相关法律问题答记者问。...', '发布时间': '2025-1... +2025-10-27 10:49:23.458 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 30 + → total_inserted: 17 + → total_duplicates: 13 + → total_failed: 0 + → failed_records_count: 13 +2025-10-27 10:49:23.458 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 6, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '前三季度企业创新力度加大 新质生产力加快培育' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 7, 'type': 'du... + → detailed_failed_records: [{'index': 6, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '前三季度企业创新力度加大 新质生产力加快培育' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '前三季度企... +2025-10-27 10:49:23.459 | INFO | rss_subscriptions:259 - 成功写入 17/30 条记录 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.460 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-27 02:43:31 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.460 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-27 02:43:31 + → module: 'NewsAPIClient' +2025-10-27 10:49:23.461 | INFO | task_scheduler:289 - 任务执行完成,耗时: 2.36秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-27 10:49:23.483 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-27 10:49:23.485 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-27 10:49:31.104 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:49:31 + → module: 'TaskScheduler' +2025-10-27 10:49:31.104 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:49:41.112 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:49:41 + → module: 'TaskScheduler' +2025-10-27 10:49:41.112 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:49:51.120 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:49:51 + → module: 'TaskScheduler' +2025-10-27 10:49:51.120 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:50:01.127 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:50:01 + → module: 'TaskScheduler' +2025-10-27 10:50:01.127 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:50:01.134 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-27 10:50:01.154 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-27 10:50:01.154 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-27 10:50:01.154 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-27 10:50:01.155 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-27 10:50:01.155 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-27 10:50:01.179 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-27 10:50:01.194 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-27 10:50:01.195 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-27 10:50:01.196 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-27 02:43:31 + → module: 'NewsAPIClient' +2025-10-27 10:50:01.196 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-27 02:43:31 + → module: 'NewsAPIClient' +2025-10-27 10:50:01.196 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-27 10:50:01.553 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-27 10:50:01.566 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-27 10:50:01.575 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-27 10:50:01.831 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-27 10:50:01.833 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-27 10:50:01.834 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.64秒 + → module: 'NewsAPIClient' +2025-10-27 10:50:01.834 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-27 10:50:01.835 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-27 10:50:01.836 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-27 10:50:01.836 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-27 10:50:01.838 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-27 02:43:31 + → module: 'NewsAPIClient' +2025-10-27 10:50:01.838 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-27 02:43:31 + → module: 'NewsAPIClient' +2025-10-27 10:50:01.838 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.68秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-27 10:50:01.857 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-27 10:50:01.857 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-27 10:50:11.156 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:50:11 + → module: 'TaskScheduler' +2025-10-27 10:50:11.156 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:50:21.163 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:50:21 + → module: 'TaskScheduler' +2025-10-27 10:50:21.163 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:50:31.188 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:50:31 + → module: 'TaskScheduler' +2025-10-27 10:50:31.188 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:50:41.195 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:50:41 + → module: 'TaskScheduler' +2025-10-27 10:50:41.195 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:50:51.203 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:50:51 + → module: 'TaskScheduler' +2025-10-27 10:50:51.203 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:51:01.210 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:51:01 + → module: 'TaskScheduler' +2025-10-27 10:51:01.210 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:51:11.217 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:51:11 + → module: 'TaskScheduler' +2025-10-27 10:51:11.217 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:51:21.238 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:51:21 + → module: 'TaskScheduler' +2025-10-27 10:51:21.238 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:51:31.266 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:51:31 + → module: 'TaskScheduler' +2025-10-27 10:51:31.266 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:51:41.297 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:51:41 + → module: 'TaskScheduler' +2025-10-27 10:51:41.297 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:51:51.305 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:51:51 + → module: 'TaskScheduler' +2025-10-27 10:51:51.305 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:52:01.311 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:52:01 + → module: 'TaskScheduler' +2025-10-27 10:52:01.311 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:52:11.318 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:52:11 + → module: 'TaskScheduler' +2025-10-27 10:52:11.318 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:52:21.325 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:52:21 + → module: 'TaskScheduler' +2025-10-27 10:52:21.325 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:53:16.094 | INFO | task_scheduler:28 - 任务调度器已初始化,最大工作线程数: 5 + → module: 'TaskScheduler' +2025-10-27 10:53:16.094 | INFO | main:24 - 情报系统已初始化(Cron模式),启动时执行任务: False + → module: 'Main' +2025-10-27 10:53:16.094 | DEBUG | main:79 - 信号处理器已注册 + → module: 'Main' +2025-10-27 10:53:16.095 | INFO | main:30 - 系统启动 - 运行在Cron调度模式 + → module: 'Main' +2025-10-27 10:53:16.095 | INFO | main:111 - 开始优雅关闭系统 + → module: 'Main' +2025-10-27 10:53:16.137 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT COUNT(*) as cnt \n FROM main_task \n WHERE is_active = 1 \n AND next_run_time <= %s \n AND is_running = 0\n ' +2025-10-27 10:53:16.174 | INFO | mysql_agent:134 - 查询执行成功 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-27 10:53:16.175 | INFO | main:118 - 系统关闭完成 + → module: 'Main' + → pending_tasks: np.int64(0) + → shutdown_time: datetime.datetime(2025, 10, 27, 10, 53, 16, 175509) +2025-10-27 10:54:20.458 | INFO | task_scheduler:28 - 任务调度器已初始化,最大工作线程数: 5 + → module: 'TaskScheduler' +2025-10-27 10:54:20.458 | INFO | main:24 - 情报系统已初始化(Cron模式),启动时执行任务: False + → module: 'Main' +2025-10-27 10:54:20.459 | DEBUG | main:80 - 信号处理器已注册 + → module: 'Main' +2025-10-27 10:54:20.459 | INFO | main:30 - 系统启动 - 运行在Cron调度模式 + → module: 'Main' +2025-10-27 10:54:20.499 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:54:20 + → module: 'TaskScheduler' +2025-10-27 10:54:20.499 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:54:30.534 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:54:30 + → module: 'TaskScheduler' +2025-10-27 10:54:30.534 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:54:40.542 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:54:40 + → module: 'TaskScheduler' +2025-10-27 10:54:40.542 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:54:55.099 | INFO | task_scheduler:28 - 任务调度器已初始化,最大工作线程数: 5 + → module: 'TaskScheduler' +2025-10-27 10:54:55.099 | INFO | main:24 - 情报系统已初始化(Cron模式),启动时执行任务: False + → module: 'Main' +2025-10-27 10:54:55.100 | DEBUG | main:80 - 信号处理器已注册 + → module: 'Main' +2025-10-27 10:54:55.100 | INFO | main:30 - 系统启动 - 运行在Cron调度模式 + → module: 'Main' +2025-10-27 10:54:55.100 | INFO | main:38 - 启动时执行所有到期任务 + → module: 'Main' +2025-10-27 10:54:55.142 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:54:55 + → module: 'TaskScheduler' +2025-10-27 10:54:55.142 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:54:55.182 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:54:55 + → module: 'TaskScheduler' +2025-10-27 10:54:55.182 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:55:05.190 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:55:05 + → module: 'TaskScheduler' +2025-10-27 10:55:05.190 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:55:05.215 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-27 10:55:05.236 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-27 10:55:05.237 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-27 10:55:05.238 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-27 10:55:05.336 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-27 10:55:05.336 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-27 10:55:05.351 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-27 10:55:05.368 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-27 10:55:05.368 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-27 10:55:05.369 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-27 02:43:31 + → module: 'NewsAPIClient' +2025-10-27 10:55:05.369 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-27 02:43:31 + → module: 'NewsAPIClient' +2025-10-27 10:55:05.369 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-27 10:55:05.745 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-27 10:55:05.753 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-27 10:55:05.761 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-27 10:55:06.057 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-27 10:55:06.058 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-27 10:55:06.059 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.69秒 + → module: 'NewsAPIClient' +2025-10-27 10:55:06.059 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-27 10:55:06.060 | DEBUG | rss_subscriptions:235 - 处理条目 1: 韩国3500亿美元对美投资承诺陷入僵局 + → module: 'NewsAPIClient' +2025-10-27 10:55:06.085 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-27 10:55:06.087 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-27 10:55:06.089 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-27 10:55:06.104 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-27 10:55:06.104 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-27 10:55:06.105 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-27 10:55:06.105 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-27 10:55:06.105 | DEBUG | rss_subscriptions:235 - 处理条目 1: 民政部:正试点向中度以上失能老年人发放养老服务消费补贴 + → module: 'NewsAPIClient' +2025-10-27 10:55:06.109 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-27 10:55:06.110 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-27 10:55:06.111 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-27 10:55:06.118 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-27 10:55:06.118 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-27 10:55:06.118 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-27 10:55:06.119 | DEBUG | rss_subscriptions:235 - 处理条目 1: 韩国3500亿美元对美投资承诺陷入僵局 + → module: 'NewsAPIClient' +2025-10-27 10:55:06.119 | DEBUG | rss_subscriptions:235 - 处理条目 2: 藏在新四军臂章中的“沉默与尊严”——台湾画家庄索之子忆父亲 + → module: 'NewsAPIClient' +2025-10-27 10:55:06.119 | DEBUG | rss_subscriptions:235 - 处理条目 3: 民政部:正试点向中度以上失能老年人发放养老服务消费补贴 + → module: 'NewsAPIClient' +2025-10-27 10:55:06.132 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-27 10:55:06.134 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-27 10:55:06.135 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 3 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-27 10:55:06.139 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 0 + → error_message: "Duplicate entry '韩国3500亿美元对美投资承诺陷入僵局-2025-10-27 02:' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '韩国3500亿美元对美投资承诺陷入僵局...', '文章链接': 'http://www.chinanews.com/cj/2025/10-27/10505033.shtml...', '文章摘要': '中新网10月27日电(记者 宫宏宇)据彭博社报道,韩国总统李在明24日在采访中表示,针对韩国对美3500亿美元投资承诺,韩美两国目前在主要细节讨论上仍陷入僵局。这表明两国... +2025-10-27 10:55:06.147 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 2 + → error_message: "Duplicate entry '民政部:正试点向中度以上失能老年人发放养老æ' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '民政部:正试点向中度以上失能老年人发放养老服务消费补贴...', '文章链接': 'http://www.chinanews.com/gn/2025/10-27/10505023.shtml...', '文章摘要': '中新网10月27日电 民政部27日举行第四季度例行新闻发布会,老龄工作司副司长张晓峰在会上介绍,今年7月,全国老龄委印发了2025年全国“敬老月”活动通知... +2025-10-27 10:55:06.148 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 3 + → total_inserted: 1 + → total_duplicates: 2 + → total_failed: 0 + → failed_records_count: 2 +2025-10-27 10:55:06.148 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '韩国3500亿美元对美投资承诺陷入僵局-2025-10-27 02:' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 2,... + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '韩国3500亿美元对美投资承诺陷入僵局-2025-10-27 02:' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文... +2025-10-27 10:55:06.149 | INFO | rss_subscriptions:259 - 成功写入 1/3 条记录 + → module: 'NewsAPIClient' +2025-10-27 10:55:06.150 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-27 02:49:51 + → module: 'NewsAPIClient' +2025-10-27 10:55:06.150 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-27 02:49:51 + → module: 'NewsAPIClient' +2025-10-27 10:55:06.150 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.91秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-27 10:55:06.157 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-27 10:55:06.158 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-27 10:55:15.239 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:55:15 + → module: 'TaskScheduler' +2025-10-27 10:55:15.239 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:55:25.246 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:55:25 + → module: 'TaskScheduler' +2025-10-27 10:55:25.246 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:55:35.257 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:55:35 + → module: 'TaskScheduler' +2025-10-27 10:55:35.258 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:55:45.284 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:55:45 + → module: 'TaskScheduler' +2025-10-27 10:55:45.284 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:55:55.300 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:55:55 + → module: 'TaskScheduler' +2025-10-27 10:55:55.300 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:56:05.307 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:56:05 + → module: 'TaskScheduler' +2025-10-27 10:56:05.307 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:56:15.313 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:56:15 + → module: 'TaskScheduler' +2025-10-27 10:56:15.313 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:56:25.333 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:56:25 + → module: 'TaskScheduler' +2025-10-27 10:56:25.333 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:56:35.340 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:56:35 + → module: 'TaskScheduler' +2025-10-27 10:56:35.341 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:56:45.347 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:56:45 + → module: 'TaskScheduler' +2025-10-27 10:56:45.347 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:56:55.355 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:56:55 + → module: 'TaskScheduler' +2025-10-27 10:56:55.355 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:57:05.363 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:57:05 + → module: 'TaskScheduler' +2025-10-27 10:57:05.363 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:57:15.371 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:57:15 + → module: 'TaskScheduler' +2025-10-27 10:57:15.371 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:57:25.379 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:57:25 + → module: 'TaskScheduler' +2025-10-27 10:57:25.379 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:57:35.410 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:57:35 + → module: 'TaskScheduler' +2025-10-27 10:57:35.410 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:57:45.441 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:57:45 + → module: 'TaskScheduler' +2025-10-27 10:57:45.441 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:57:55.450 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:57:55 + → module: 'TaskScheduler' +2025-10-27 10:57:55.450 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:58:05.458 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:58:05 + → module: 'TaskScheduler' +2025-10-27 10:58:05.458 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:58:15.484 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:58:15 + → module: 'TaskScheduler' +2025-10-27 10:58:15.484 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:58:25.491 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:58:25 + → module: 'TaskScheduler' +2025-10-27 10:58:25.491 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:58:35.497 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:58:35 + → module: 'TaskScheduler' +2025-10-27 10:58:35.497 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:58:45.504 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:58:45 + → module: 'TaskScheduler' +2025-10-27 10:58:45.504 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:58:55.534 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:58:55 + → module: 'TaskScheduler' +2025-10-27 10:58:55.534 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:59:05.558 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:59:05 + → module: 'TaskScheduler' +2025-10-27 10:59:05.558 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:59:15.565 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:59:15 + → module: 'TaskScheduler' +2025-10-27 10:59:15.565 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:59:25.593 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:59:25 + → module: 'TaskScheduler' +2025-10-27 10:59:25.593 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:59:35.601 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:59:35 + → module: 'TaskScheduler' +2025-10-27 10:59:35.601 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:59:45.608 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:59:45 + → module: 'TaskScheduler' +2025-10-27 10:59:45.608 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 10:59:55.635 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 10:59:55 + → module: 'TaskScheduler' +2025-10-27 10:59:55.635 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:00:05.659 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:00:05 + → module: 'TaskScheduler' +2025-10-27 11:00:05.659 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:00:05.685 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-27 11:00:05.707 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-27 11:00:05.707 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-27 11:00:05.707 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-27 11:00:05.708 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-27 11:00:05.708 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-27 11:00:05.728 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-27 11:00:05.732 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-27 11:00:05.733 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-27 11:00:05.733 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-27 02:49:51 + → module: 'NewsAPIClient' +2025-10-27 11:00:05.733 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-27 02:49:51 + → module: 'NewsAPIClient' +2025-10-27 11:00:05.734 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-27 11:00:06.082 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-27 11:00:06.109 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-27 11:00:06.129 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-27 11:00:06.370 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-27 11:00:06.372 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-27 11:00:06.373 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.64秒 + → module: 'NewsAPIClient' +2025-10-27 11:00:06.373 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-27 11:00:06.374 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-27 11:00:06.374 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-27 11:00:06.375 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-27 11:00:06.375 | DEBUG | rss_subscriptions:235 - 处理条目 1: 《志愿军:浴血和平》票房突破六亿 战争巨制终章点燃全民家国情 + → module: 'NewsAPIClient' +2025-10-27 11:00:06.378 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-27 11:00:06.380 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-27 11:00:06.381 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-27 11:00:06.387 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-27 11:00:06.388 | INFO | rss_subscriptions:259 - 成功写入 1/1 条记录 + → module: 'NewsAPIClient' +2025-10-27 11:00:06.389 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-27 02:53:17 + → module: 'NewsAPIClient' +2025-10-27 11:00:06.389 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-27 02:53:17 + → module: 'NewsAPIClient' +2025-10-27 11:00:06.389 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.68秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-27 11:00:06.402 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-27 11:00:06.402 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-27 11:00:15.709 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:00:15 + → module: 'TaskScheduler' +2025-10-27 11:00:15.709 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:00:25.716 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:00:25 + → module: 'TaskScheduler' +2025-10-27 11:00:25.716 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:00:35.722 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:00:35 + → module: 'TaskScheduler' +2025-10-27 11:00:35.722 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:00:45.751 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:00:45 + → module: 'TaskScheduler' +2025-10-27 11:00:45.751 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:00:55.768 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:00:55 + → module: 'TaskScheduler' +2025-10-27 11:00:55.768 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:01:05.775 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:01:05 + → module: 'TaskScheduler' +2025-10-27 11:01:05.776 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:01:15.806 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:01:15 + → module: 'TaskScheduler' +2025-10-27 11:01:15.806 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:01:25.814 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:01:25 + → module: 'TaskScheduler' +2025-10-27 11:01:25.814 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:01:35.846 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:01:35 + → module: 'TaskScheduler' +2025-10-27 11:01:35.846 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:01:45.854 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:01:45 + → module: 'TaskScheduler' +2025-10-27 11:01:45.854 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:01:55.871 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:01:55 + → module: 'TaskScheduler' +2025-10-27 11:01:55.871 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:02:05.879 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:02:05 + → module: 'TaskScheduler' +2025-10-27 11:02:05.880 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:02:15.887 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:02:15 + → module: 'TaskScheduler' +2025-10-27 11:02:15.887 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:02:25.895 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:02:25 + → module: 'TaskScheduler' +2025-10-27 11:02:25.895 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:02:35.902 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:02:35 + → module: 'TaskScheduler' +2025-10-27 11:02:35.902 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:02:45.934 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:02:45 + → module: 'TaskScheduler' +2025-10-27 11:02:45.934 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:02:55.941 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:02:55 + → module: 'TaskScheduler' +2025-10-27 11:02:55.941 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:03:05.968 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:03:05 + → module: 'TaskScheduler' +2025-10-27 11:03:05.968 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:03:15.987 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:03:15 + → module: 'TaskScheduler' +2025-10-27 11:03:15.987 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:03:25.994 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:03:25 + → module: 'TaskScheduler' +2025-10-27 11:03:25.994 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:03:36.013 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:03:36 + → module: 'TaskScheduler' +2025-10-27 11:03:36.013 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:03:46.037 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:03:46 + → module: 'TaskScheduler' +2025-10-27 11:03:46.037 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:03:56.044 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:03:56 + → module: 'TaskScheduler' +2025-10-27 11:03:56.044 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:04:06.052 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:04:06 + → module: 'TaskScheduler' +2025-10-27 11:04:06.052 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:04:16.081 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:04:16 + → module: 'TaskScheduler' +2025-10-27 11:04:16.081 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:04:26.107 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:04:26 + → module: 'TaskScheduler' +2025-10-27 11:04:26.107 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:04:36.127 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:04:36 + → module: 'TaskScheduler' +2025-10-27 11:04:36.127 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:04:46.148 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:04:46 + → module: 'TaskScheduler' +2025-10-27 11:04:46.148 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:04:56.156 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:04:56 + → module: 'TaskScheduler' +2025-10-27 11:04:56.156 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:05:06.164 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:05:06 + → module: 'TaskScheduler' +2025-10-27 11:05:06.164 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:05:06.171 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-27 11:05:06.179 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-27 11:05:06.180 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-27 11:05:06.180 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-27 11:05:06.180 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-27 11:05:06.180 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-27 11:05:06.206 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-27 11:05:06.221 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-27 11:05:06.222 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-27 11:05:06.222 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-27 02:53:17 + → module: 'NewsAPIClient' +2025-10-27 11:05:06.223 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-27 02:53:17 + → module: 'NewsAPIClient' +2025-10-27 11:05:06.223 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-27 11:05:06.583 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-27 11:05:06.619 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-27 11:05:06.631 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-27 11:05:06.875 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-27 11:05:06.876 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-27 11:05:06.877 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.65秒 + → module: 'NewsAPIClient' +2025-10-27 11:05:06.877 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-27 11:05:06.877 | DEBUG | rss_subscriptions:235 - 处理条目 1: 中国一重原党委常委、副总经理陆文俊严重违纪违法被开除党籍和公职 + → module: 'NewsAPIClient' +2025-10-27 11:05:06.877 | DEBUG | rss_subscriptions:235 - 处理条目 2: 十四届全国人大常委会原委员、全国人大农业与农村委员会原副主任委员蒋超良 严重违纪违法被开除党籍和公职 + → module: 'NewsAPIClient' +2025-10-27 11:05:06.880 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-27 11:05:06.881 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-27 11:05:06.882 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 2 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-27 11:05:06.920 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 2 + → total_inserted: 2 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-27 11:05:06.921 | INFO | rss_subscriptions:259 - 成功写入 2/2 条记录 + → module: 'NewsAPIClient' +2025-10-27 11:05:06.921 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-27 11:05:06.922 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-27 11:05:06.923 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-27 11:05:06.924 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-27 03:03:50 + → module: 'NewsAPIClient' +2025-10-27 11:05:06.924 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-27 03:03:50 + → module: 'NewsAPIClient' +2025-10-27 11:05:06.924 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.74秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-27 11:05:06.932 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-27 11:05:06.932 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-27 11:05:16.182 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:05:16 + → module: 'TaskScheduler' +2025-10-27 11:05:16.182 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:05:26.209 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:05:26 + → module: 'TaskScheduler' +2025-10-27 11:05:26.210 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:05:36.239 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:05:36 + → module: 'TaskScheduler' +2025-10-27 11:05:36.239 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:05:46.258 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:05:46 + → module: 'TaskScheduler' +2025-10-27 11:05:46.258 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:05:56.265 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:05:56 + → module: 'TaskScheduler' +2025-10-27 11:05:56.265 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:06:06.273 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:06:06 + → module: 'TaskScheduler' +2025-10-27 11:06:06.273 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:06:16.279 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:06:16 + → module: 'TaskScheduler' +2025-10-27 11:06:16.279 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:06:26.286 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:06:26 + → module: 'TaskScheduler' +2025-10-27 11:06:26.286 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:06:36.294 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:06:36 + → module: 'TaskScheduler' +2025-10-27 11:06:36.294 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:06:46.301 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:06:46 + → module: 'TaskScheduler' +2025-10-27 11:06:46.301 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:06:56.308 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:06:56 + → module: 'TaskScheduler' +2025-10-27 11:06:56.309 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:07:06.349 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:07:06 + → module: 'TaskScheduler' +2025-10-27 11:07:06.349 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:07:16.360 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:07:16 + → module: 'TaskScheduler' +2025-10-27 11:07:16.361 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:07:26.401 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:07:26 + → module: 'TaskScheduler' +2025-10-27 11:07:26.402 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:07:36.416 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:07:36 + → module: 'TaskScheduler' +2025-10-27 11:07:36.416 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:07:46.428 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:07:46 + → module: 'TaskScheduler' +2025-10-27 11:07:46.428 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:07:56.442 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:07:56 + → module: 'TaskScheduler' +2025-10-27 11:07:56.442 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:08:06.453 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:08:06 + → module: 'TaskScheduler' +2025-10-27 11:08:06.453 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:08:16.460 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:08:16 + → module: 'TaskScheduler' +2025-10-27 11:08:16.460 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:08:26.467 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:08:26 + → module: 'TaskScheduler' +2025-10-27 11:08:26.467 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:08:36.474 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:08:36 + → module: 'TaskScheduler' +2025-10-27 11:08:36.474 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:08:46.532 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:08:46 + → module: 'TaskScheduler' +2025-10-27 11:08:46.533 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:08:56.539 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:08:56 + → module: 'TaskScheduler' +2025-10-27 11:08:56.539 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:09:06.547 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:09:06 + → module: 'TaskScheduler' +2025-10-27 11:09:06.547 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:09:16.575 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:09:16 + → module: 'TaskScheduler' +2025-10-27 11:09:16.575 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:09:26.603 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:09:26 + → module: 'TaskScheduler' +2025-10-27 11:09:26.603 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:09:36.621 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:09:36 + → module: 'TaskScheduler' +2025-10-27 11:09:36.621 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:09:46.627 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:09:46 + → module: 'TaskScheduler' +2025-10-27 11:09:46.627 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:09:56.634 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:09:56 + → module: 'TaskScheduler' +2025-10-27 11:09:56.634 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:10:06.641 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:10:06 + → module: 'TaskScheduler' +2025-10-27 11:10:06.641 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:10:06.649 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-27 11:10:06.656 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-27 11:10:06.657 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-27 11:10:06.657 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-27 11:10:06.658 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-27 11:10:06.658 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-27 11:10:06.662 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-27 11:10:06.678 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-27 11:10:06.678 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-27 11:10:06.679 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-27 03:03:50 + → module: 'NewsAPIClient' +2025-10-27 11:10:06.679 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-27 03:03:50 + → module: 'NewsAPIClient' +2025-10-27 11:10:06.679 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-27 11:10:07.032 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-27 11:10:07.054 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-27 11:10:07.064 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-27 11:10:07.366 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-27 11:10:07.367 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-27 11:10:07.368 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.69秒 + → module: 'NewsAPIClient' +2025-10-27 11:10:07.368 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-27 11:10:07.369 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-27 11:10:07.370 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-27 11:10:07.371 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-27 11:10:07.371 | DEBUG | rss_subscriptions:235 - 处理条目 1: 国家国防科技工业局原党组成员、副局长张建华严重违纪违法被开除党籍 + → module: 'NewsAPIClient' +2025-10-27 11:10:07.371 | DEBUG | rss_subscriptions:235 - 处理条目 2: 国家邮政局:前三季度邮政行业业务收入同比增长7.7% + → module: 'NewsAPIClient' +2025-10-27 11:10:07.374 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-27 11:10:07.376 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-27 11:10:07.377 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 2 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-27 11:10:07.390 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 2 + → total_inserted: 2 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-27 11:10:07.390 | INFO | rss_subscriptions:259 - 成功写入 2/2 条记录 + → module: 'NewsAPIClient' +2025-10-27 11:10:07.391 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-27 03:04:54 + → module: 'NewsAPIClient' +2025-10-27 11:10:07.391 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-27 03:04:54 + → module: 'NewsAPIClient' +2025-10-27 11:10:07.393 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.74秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-27 11:10:07.403 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-27 11:10:07.403 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-27 11:10:16.659 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:10:16 + → module: 'TaskScheduler' +2025-10-27 11:10:16.659 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:10:26.666 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:10:26 + → module: 'TaskScheduler' +2025-10-27 11:10:26.666 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:10:36.673 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:10:36 + → module: 'TaskScheduler' +2025-10-27 11:10:36.673 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:10:46.681 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:10:46 + → module: 'TaskScheduler' +2025-10-27 11:10:46.681 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:10:56.688 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:10:56 + → module: 'TaskScheduler' +2025-10-27 11:10:56.688 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:11:06.711 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:11:06 + → module: 'TaskScheduler' +2025-10-27 11:11:06.711 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:11:16.735 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:11:16 + → module: 'TaskScheduler' +2025-10-27 11:11:16.735 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:11:26.764 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:11:26 + → module: 'TaskScheduler' +2025-10-27 11:11:26.764 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:11:36.790 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:11:36 + → module: 'TaskScheduler' +2025-10-27 11:11:36.790 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:11:46.818 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:11:46 + → module: 'TaskScheduler' +2025-10-27 11:11:46.818 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:11:56.841 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:11:56 + → module: 'TaskScheduler' +2025-10-27 11:11:56.841 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:12:06.850 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:12:06 + → module: 'TaskScheduler' +2025-10-27 11:12:06.850 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:12:16.868 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:12:16 + → module: 'TaskScheduler' +2025-10-27 11:12:16.868 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:12:26.893 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:12:26 + → module: 'TaskScheduler' +2025-10-27 11:12:26.894 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:12:36.901 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:12:36 + → module: 'TaskScheduler' +2025-10-27 11:12:36.901 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 11:12:46.909 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-27 11:12:46 + → module: 'TaskScheduler' +2025-10-27 11:12:46.909 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-27 13:57:01.901 | WARNING | baidu_ai_client:55 - 未配置百度API密钥 + → module: 'BaiduAIClient' +2025-10-27 13:57:01.902 | WARNING | baidu_ai_client:56 - 请在config.py中配置或设置环境变量 BAIDU_API_KEY 和 BAIDU_SECRET_KEY + → module: 'BaiduAIClient' +2025-10-27 14:02:11.142 | WARNING | baidu_ai_client:55 - 未配置百度API密钥 + → module: 'BaiduAIClient' +2025-10-27 14:02:11.142 | WARNING | baidu_ai_client:56 - 请在config.py中配置或设置环境变量 BAIDU_API_KEY 和 BAIDU_SECRET_KEY + → module: 'BaiduAIClient' +2025-10-27 15:41:17.165 | INFO | ai_processor_rss_data:51 - RSS数据AI处理器初始化完成 + → module: 'RSSDataAIProcessor' +2025-10-27 15:41:17.165 | INFO | ai_processor_rss_data:87 - 开始批量处理数据,批次大小: 10, 延迟: 1.5秒 + → module: 'RSSDataAIProcessor' +2025-10-27 15:41:17.175 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-27 15:41:17.175 | DEBUG | ai_processor_rss_data:191 - 表 processed_rss_data 已存在 '是否ai处理' 字段 + → module: 'RSSDataAIProcessor' +2025-10-27 15:41:17.178 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-27 15:41:17.178 | DEBUG | mysql_agent:640 - 检查表是否存在 + → module: 'MySQLAgent(Windows)' + → 表: 'ai_processor_rss_analysis' + → 存在: False +2025-10-27 15:41:17.266 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 0 +2025-10-27 15:41:17.266 | INFO | ai_processor_rss_data:225 - 成功创建AI结果表: ai_processor_rss_analysis + → module: 'RSSDataAIProcessor' +2025-10-27 15:41:17.266 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT id, 文章标题, 文章摘要, 发布时间, 来源URL, 文章链接\n FROM processed_rss_data\n WHERE 是否ai处理 = 0 OR 是否ai处理 IS NULL\n ORDER BY 创建时间 DESC\n LIMIT %s\n ' +2025-10-27 15:41:17.488 | INFO | ai_processor_rss_data:249 - 成功加载 10 条未处理的数据 + → module: 'RSSDataAIProcessor' +2025-10-27 15:41:17.489 | DEBUG | ai_processor_rss_data:112 - 处理记录 178 (1/10) + → module: 'RSSDataAIProcessor' +2025-10-27 15:41:32.173 | DEBUG | ai_processor_rss_data:112 - 处理记录 172 (2/10) + → module: 'RSSDataAIProcessor' +2025-10-27 15:41:49.499 | DEBUG | ai_processor_rss_data:112 - 处理记录 168 (3/10) + → module: 'RSSDataAIProcessor' +2025-10-27 15:42:08.696 | DEBUG | ai_processor_rss_data:112 - 处理记录 169 (4/10) + → module: 'RSSDataAIProcessor' +2025-10-27 15:42:27.545 | DEBUG | ai_processor_rss_data:112 - 处理记录 170 (5/10) + → module: 'RSSDataAIProcessor' +2025-10-27 15:42:42.650 | DEBUG | ai_processor_rss_data:112 - 处理记录 171 (6/10) + → module: 'RSSDataAIProcessor' +2025-10-27 15:43:03.959 | DEBUG | ai_processor_rss_data:112 - 处理记录 173 (7/10) + → module: 'RSSDataAIProcessor' +2025-10-27 15:43:20.430 | DEBUG | ai_processor_rss_data:112 - 处理记录 174 (8/10) + → module: 'RSSDataAIProcessor' +2025-10-27 15:43:35.914 | DEBUG | ai_processor_rss_data:112 - 处理记录 175 (9/10) + → module: 'RSSDataAIProcessor' +2025-10-27 15:43:55.445 | DEBUG | ai_processor_rss_data:112 - 处理记录 176 (10/10) + → module: 'RSSDataAIProcessor' +2025-10-27 15:44:11.208 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 ai_processor_rss_analysis + → module: 'MySQLAgent(Windows)' +2025-10-27 15:44:11.212 | DEBUG | mysql_agent:182 - 表 ai_processor_rss_analysis 包含以下列:['id', 'source_id', '文章标题', '文章摘要', '发布时间', '来源URL', '文章链接', '是否相关', '相关度评分', '标签', '分类', '分析说明', '处理时间', '创建时间', '更新时间'] + → module: 'MySQLAgent(Windows)' +2025-10-27 15:44:11.217 | DEBUG | mysql_agent:208 - 表 ai_processor_rss_analysis 的过滤后DataFrame:共 10 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-27 15:44:11.279 | INFO | mysql_agent:294 - 表 ai_processor_rss_analysis 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 10 + → total_inserted: 10 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-27 15:44:11.279 | INFO | ai_processor_rss_data:391 - 成功保存 10 条AI处理结果 + → module: 'RSSDataAIProcessor' +2025-10-27 15:44:11.313 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 10 +2025-10-27 15:44:11.313 | INFO | ai_processor_rss_data:419 - 成功标记 10 条记录为已处理 + → module: 'RSSDataAIProcessor' +2025-10-27 15:44:11.314 | INFO | ai_processor_rss_data:151 - 批量处理完成 + → module: 'RSSDataAIProcessor' + → success: True + → message: 'AI处理完成' + → total_count: 10 + → processed_count: 10 + → saved_count: 10 + → failed_count: 0 + → relevant_count: 0 + → processing_time: '2025-10-27 15:44:11' +2025-10-27 16:31:48.033 | INFO | ai_processor_rss_data:51 - RSS数据AI处理器初始化完成 + → module: 'RSSDataAIProcessor' +2025-10-27 16:31:48.033 | INFO | ai_processor_rss_data:87 - 开始批量处理数据,批次大小: 200, 延迟: 1.5秒 + → module: 'RSSDataAIProcessor' +2025-10-27 16:31:48.054 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-27 16:31:48.054 | DEBUG | ai_processor_rss_data:191 - 表 processed_rss_data 已存在 '是否ai处理' 字段 + → module: 'RSSDataAIProcessor' +2025-10-27 16:31:48.068 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-27 16:31:48.069 | DEBUG | mysql_agent:640 - 检查表是否存在 + → module: 'MySQLAgent(Windows)' + → 表: 'ai_processor_rss_analysis' + → 存在: True +2025-10-27 16:31:48.069 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT id, 文章标题, 文章摘要, 发布时间, 来源URL, 文章链接\n FROM processed_rss_data\n WHERE 是否ai处理 = 0 OR 是否ai处理 IS NULL\n ORDER BY 创建时间 DESC\n LIMIT %s\n ' +2025-10-27 16:31:48.311 | INFO | ai_processor_rss_data:249 - 成功加载 147 条未处理的数据 + → module: 'RSSDataAIProcessor' +2025-10-27 16:31:48.312 | DEBUG | ai_processor_rss_data:112 - 处理记录 177 (1/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:32:03.457 | DEBUG | ai_processor_rss_data:112 - 处理记录 164 (2/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:32:19.725 | DEBUG | ai_processor_rss_data:112 - 处理记录 165 (3/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:32:31.501 | DEBUG | ai_processor_rss_data:112 - 处理记录 166 (4/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:32:47.065 | DEBUG | ai_processor_rss_data:112 - 处理记录 167 (5/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:32:59.024 | DEBUG | ai_processor_rss_data:112 - 处理记录 163 (6/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:33:15.922 | DEBUG | ai_processor_rss_data:112 - 处理记录 161 (7/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:33:34.417 | DEBUG | ai_processor_rss_data:112 - 处理记录 162 (8/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:33:52.223 | DEBUG | ai_processor_rss_data:112 - 处理记录 154 (9/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:34:06.201 | DEBUG | ai_processor_rss_data:112 - 处理记录 155 (10/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:34:22.733 | DEBUG | ai_processor_rss_data:112 - 处理记录 156 (11/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:34:39.515 | DEBUG | ai_processor_rss_data:112 - 处理记录 157 (12/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:35:01.082 | DEBUG | ai_processor_rss_data:112 - 处理记录 158 (13/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:35:23.217 | DEBUG | ai_processor_rss_data:112 - 处理记录 159 (14/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:35:41.899 | DEBUG | ai_processor_rss_data:112 - 处理记录 160 (15/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:35:54.700 | DEBUG | ai_processor_rss_data:112 - 处理记录 103 (16/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:36:11.733 | DEBUG | ai_processor_rss_data:112 - 处理记录 104 (17/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:36:27.285 | DEBUG | ai_processor_rss_data:112 - 处理记录 105 (18/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:36:42.474 | DEBUG | ai_processor_rss_data:112 - 处理记录 106 (19/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:36:58.263 | DEBUG | ai_processor_rss_data:112 - 处理记录 107 (20/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:37:30.671 | DEBUG | ai_processor_rss_data:112 - 处理记录 108 (21/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:37:49.314 | DEBUG | ai_processor_rss_data:112 - 处理记录 109 (22/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:38:03.687 | DEBUG | ai_processor_rss_data:112 - 处理记录 110 (23/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:38:21.834 | DEBUG | ai_processor_rss_data:112 - 处理记录 111 (24/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:38:43.525 | DEBUG | ai_processor_rss_data:112 - 处理记录 112 (25/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:39:01.339 | DEBUG | ai_processor_rss_data:112 - 处理记录 113 (26/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:39:18.546 | DEBUG | ai_processor_rss_data:112 - 处理记录 114 (27/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:39:35.982 | DEBUG | ai_processor_rss_data:112 - 处理记录 115 (28/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:40:00.719 | DEBUG | ai_processor_rss_data:112 - 处理记录 116 (29/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:40:22.660 | DEBUG | ai_processor_rss_data:112 - 处理记录 117 (30/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:40:57.761 | DEBUG | ai_processor_rss_data:112 - 处理记录 118 (31/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:41:13.606 | DEBUG | ai_processor_rss_data:112 - 处理记录 119 (32/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:41:30.100 | DEBUG | ai_processor_rss_data:112 - 处理记录 120 (33/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:41:49.248 | DEBUG | ai_processor_rss_data:112 - 处理记录 121 (34/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:42:03.837 | DEBUG | ai_processor_rss_data:112 - 处理记录 122 (35/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:42:32.240 | DEBUG | ai_processor_rss_data:112 - 处理记录 123 (36/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:42:49.074 | DEBUG | ai_processor_rss_data:112 - 处理记录 124 (37/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:43:06.073 | DEBUG | ai_processor_rss_data:112 - 处理记录 125 (38/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:43:20.734 | DEBUG | ai_processor_rss_data:112 - 处理记录 126 (39/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:43:41.304 | DEBUG | ai_processor_rss_data:112 - 处理记录 127 (40/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:43:59.240 | DEBUG | ai_processor_rss_data:112 - 处理记录 128 (41/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:44:13.163 | DEBUG | ai_processor_rss_data:112 - 处理记录 129 (42/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:44:33.102 | DEBUG | ai_processor_rss_data:112 - 处理记录 130 (43/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:44:50.598 | DEBUG | ai_processor_rss_data:112 - 处理记录 131 (44/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:45:06.258 | DEBUG | ai_processor_rss_data:112 - 处理记录 132 (45/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:45:20.026 | DEBUG | ai_processor_rss_data:112 - 处理记录 1 (46/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:45:40.260 | DEBUG | ai_processor_rss_data:112 - 处理记录 2 (47/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:45:57.032 | DEBUG | ai_processor_rss_data:112 - 处理记录 3 (48/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:46:18.966 | DEBUG | ai_processor_rss_data:112 - 处理记录 4 (49/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:46:35.721 | DEBUG | ai_processor_rss_data:112 - 处理记录 5 (50/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:46:49.370 | DEBUG | ai_processor_rss_data:112 - 处理记录 6 (51/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:47:04.509 | DEBUG | ai_processor_rss_data:112 - 处理记录 7 (52/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:47:23.604 | DEBUG | ai_processor_rss_data:112 - 处理记录 8 (53/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:47:44.926 | DEBUG | ai_processor_rss_data:112 - 处理记录 9 (54/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:47:57.541 | DEBUG | ai_processor_rss_data:112 - 处理记录 10 (55/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:48:17.486 | DEBUG | ai_processor_rss_data:112 - 处理记录 11 (56/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:48:40.734 | DEBUG | ai_processor_rss_data:112 - 处理记录 12 (57/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:48:55.134 | DEBUG | ai_processor_rss_data:112 - 处理记录 13 (58/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:49:09.891 | DEBUG | ai_processor_rss_data:112 - 处理记录 14 (59/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:49:27.838 | DEBUG | ai_processor_rss_data:112 - 处理记录 15 (60/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:49:49.846 | DEBUG | ai_processor_rss_data:112 - 处理记录 16 (61/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:50:10.896 | DEBUG | ai_processor_rss_data:112 - 处理记录 17 (62/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:50:33.741 | DEBUG | ai_processor_rss_data:112 - 处理记录 18 (63/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:50:58.294 | DEBUG | ai_processor_rss_data:112 - 处理记录 19 (64/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:51:17.497 | DEBUG | ai_processor_rss_data:112 - 处理记录 20 (65/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:51:34.619 | DEBUG | ai_processor_rss_data:112 - 处理记录 21 (66/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:51:48.523 | DEBUG | ai_processor_rss_data:112 - 处理记录 22 (67/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:52:26.759 | DEBUG | ai_processor_rss_data:112 - 处理记录 23 (68/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:52:40.945 | DEBUG | ai_processor_rss_data:112 - 处理记录 24 (69/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:52:57.524 | DEBUG | ai_processor_rss_data:112 - 处理记录 25 (70/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:53:13.719 | DEBUG | ai_processor_rss_data:112 - 处理记录 26 (71/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:53:30.388 | DEBUG | ai_processor_rss_data:112 - 处理记录 27 (72/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:53:55.917 | DEBUG | ai_processor_rss_data:112 - 处理记录 28 (73/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:54:11.372 | DEBUG | ai_processor_rss_data:112 - 处理记录 29 (74/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:54:29.479 | DEBUG | ai_processor_rss_data:112 - 处理记录 30 (75/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:54:47.426 | DEBUG | ai_processor_rss_data:112 - 处理记录 31 (76/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:55:04.082 | DEBUG | ai_processor_rss_data:112 - 处理记录 32 (77/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:55:21.959 | DEBUG | ai_processor_rss_data:112 - 处理记录 33 (78/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:55:39.406 | DEBUG | ai_processor_rss_data:112 - 处理记录 34 (79/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:55:56.850 | DEBUG | ai_processor_rss_data:112 - 处理记录 35 (80/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:56:11.798 | DEBUG | ai_processor_rss_data:112 - 处理记录 36 (81/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:56:33.519 | DEBUG | ai_processor_rss_data:112 - 处理记录 37 (82/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:56:49.560 | DEBUG | ai_processor_rss_data:112 - 处理记录 38 (83/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:57:10.531 | DEBUG | ai_processor_rss_data:112 - 处理记录 39 (84/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:57:24.796 | DEBUG | ai_processor_rss_data:112 - 处理记录 40 (85/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:57:40.309 | DEBUG | ai_processor_rss_data:112 - 处理记录 41 (86/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:57:57.350 | DEBUG | ai_processor_rss_data:112 - 处理记录 42 (87/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:58:11.241 | DEBUG | ai_processor_rss_data:112 - 处理记录 43 (88/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:58:32.738 | DEBUG | ai_processor_rss_data:112 - 处理记录 44 (89/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:58:51.415 | DEBUG | ai_processor_rss_data:112 - 处理记录 45 (90/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:59:04.551 | DEBUG | ai_processor_rss_data:112 - 处理记录 46 (91/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:59:30.381 | DEBUG | ai_processor_rss_data:112 - 处理记录 47 (92/147) + → module: 'RSSDataAIProcessor' +2025-10-27 16:59:46.486 | DEBUG | ai_processor_rss_data:112 - 处理记录 48 (93/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:00:05.562 | DEBUG | ai_processor_rss_data:112 - 处理记录 49 (94/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:00:28.176 | DEBUG | ai_processor_rss_data:112 - 处理记录 50 (95/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:00:45.473 | DEBUG | ai_processor_rss_data:112 - 处理记录 51 (96/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:01:07.629 | DEBUG | ai_processor_rss_data:112 - 处理记录 52 (97/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:01:22.641 | DEBUG | ai_processor_rss_data:112 - 处理记录 53 (98/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:01:35.525 | DEBUG | ai_processor_rss_data:112 - 处理记录 54 (99/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:01:54.337 | DEBUG | ai_processor_rss_data:112 - 处理记录 55 (100/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:02:27.627 | DEBUG | ai_processor_rss_data:112 - 处理记录 56 (101/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:02:45.319 | DEBUG | ai_processor_rss_data:112 - 处理记录 57 (102/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:03:08.382 | DEBUG | ai_processor_rss_data:112 - 处理记录 58 (103/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:03:24.231 | DEBUG | ai_processor_rss_data:112 - 处理记录 59 (104/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:03:40.758 | DEBUG | ai_processor_rss_data:112 - 处理记录 60 (105/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:03:57.999 | DEBUG | ai_processor_rss_data:112 - 处理记录 61 (106/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:04:15.105 | DEBUG | ai_processor_rss_data:112 - 处理记录 62 (107/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:04:28.285 | DEBUG | ai_processor_rss_data:112 - 处理记录 63 (108/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:04:41.936 | DEBUG | ai_processor_rss_data:112 - 处理记录 64 (109/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:05:04.196 | DEBUG | ai_processor_rss_data:112 - 处理记录 65 (110/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:05:19.296 | DEBUG | ai_processor_rss_data:112 - 处理记录 66 (111/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:05:43.106 | DEBUG | ai_processor_rss_data:112 - 处理记录 67 (112/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:06:07.954 | DEBUG | ai_processor_rss_data:112 - 处理记录 68 (113/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:06:29.812 | DEBUG | ai_processor_rss_data:112 - 处理记录 69 (114/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:06:51.255 | DEBUG | ai_processor_rss_data:112 - 处理记录 70 (115/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:07:11.467 | DEBUG | ai_processor_rss_data:112 - 处理记录 71 (116/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:07:30.292 | DEBUG | ai_processor_rss_data:112 - 处理记录 72 (117/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:07:53.382 | DEBUG | ai_processor_rss_data:112 - 处理记录 73 (118/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:08:22.760 | DEBUG | ai_processor_rss_data:112 - 处理记录 74 (119/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:08:49.248 | DEBUG | ai_processor_rss_data:112 - 处理记录 75 (120/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:09:11.169 | DEBUG | ai_processor_rss_data:112 - 处理记录 76 (121/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:09:28.302 | DEBUG | ai_processor_rss_data:112 - 处理记录 77 (122/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:10:12.952 | DEBUG | ai_processor_rss_data:112 - 处理记录 78 (123/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:10:30.500 | DEBUG | ai_processor_rss_data:112 - 处理记录 79 (124/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:10:47.207 | DEBUG | ai_processor_rss_data:112 - 处理记录 80 (125/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:11:25.589 | DEBUG | ai_processor_rss_data:112 - 处理记录 81 (126/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:11:41.916 | DEBUG | ai_processor_rss_data:112 - 处理记录 82 (127/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:11:59.981 | DEBUG | ai_processor_rss_data:112 - 处理记录 83 (128/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:12:17.711 | DEBUG | ai_processor_rss_data:112 - 处理记录 84 (129/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:12:47.322 | DEBUG | ai_processor_rss_data:112 - 处理记录 85 (130/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:13:02.872 | DEBUG | ai_processor_rss_data:112 - 处理记录 86 (131/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:13:21.971 | DEBUG | ai_processor_rss_data:112 - 处理记录 87 (132/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:13:36.461 | DEBUG | ai_processor_rss_data:112 - 处理记录 88 (133/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:13:52.780 | DEBUG | ai_processor_rss_data:112 - 处理记录 89 (134/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:14:07.840 | DEBUG | ai_processor_rss_data:112 - 处理记录 90 (135/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:14:30.222 | DEBUG | ai_processor_rss_data:112 - 处理记录 91 (136/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:14:47.843 | DEBUG | ai_processor_rss_data:112 - 处理记录 92 (137/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:15:05.608 | DEBUG | ai_processor_rss_data:112 - 处理记录 93 (138/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:15:24.210 | DEBUG | ai_processor_rss_data:112 - 处理记录 94 (139/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:15:47.390 | DEBUG | ai_processor_rss_data:112 - 处理记录 95 (140/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:16:01.471 | DEBUG | ai_processor_rss_data:112 - 处理记录 96 (141/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:16:18.297 | DEBUG | ai_processor_rss_data:112 - 处理记录 97 (142/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:16:32.328 | DEBUG | ai_processor_rss_data:112 - 处理记录 98 (143/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:16:49.276 | DEBUG | ai_processor_rss_data:112 - 处理记录 99 (144/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:17:08.808 | DEBUG | ai_processor_rss_data:112 - 处理记录 100 (145/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:17:25.022 | DEBUG | ai_processor_rss_data:112 - 处理记录 101 (146/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:17:48.841 | DEBUG | ai_processor_rss_data:112 - 处理记录 102 (147/147) + → module: 'RSSDataAIProcessor' +2025-10-27 17:18:11.399 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 ai_processor_rss_analysis + → module: 'MySQLAgent(Windows)' +2025-10-27 17:18:11.401 | DEBUG | mysql_agent:182 - 表 ai_processor_rss_analysis 包含以下列:['id', 'source_id', '文章标题', '文章摘要', '发布时间', '来源URL', '文章链接', '是否相关', '相关度评分', '标签', '分类', '分析说明', '处理时间', '创建时间', '更新时间'] + → module: 'MySQLAgent(Windows)' +2025-10-27 17:18:11.404 | DEBUG | mysql_agent:208 - 表 ai_processor_rss_analysis 的过滤后DataFrame:共 147 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-27 17:18:12.261 | INFO | mysql_agent:294 - 表 ai_processor_rss_analysis 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 147 + → total_inserted: 147 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-27 17:18:12.261 | INFO | ai_processor_rss_data:391 - 成功保存 147 条AI处理结果 + → module: 'RSSDataAIProcessor' +2025-10-27 17:18:12.275 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 147 +2025-10-27 17:18:12.275 | INFO | ai_processor_rss_data:419 - 成功标记 147 条记录为已处理 + → module: 'RSSDataAIProcessor' +2025-10-27 17:18:12.276 | INFO | ai_processor_rss_data:151 - 批量处理完成 + → module: 'RSSDataAIProcessor' + → success: True + → message: 'AI处理完成' + → total_count: 147 + → processed_count: 147 + → saved_count: 147 + → failed_count: 0 + → relevant_count: 13 + → processing_time: '2025-10-27 17:18:12' +2025-10-28 13:34:46.077 | INFO | task_scheduler:28 - 任务调度器已初始化,最大工作线程数: 5 + → module: 'TaskScheduler' +2025-10-28 13:34:46.078 | INFO | main:24 - 情报系统已初始化(Cron模式),启动时执行任务: False + → module: 'Main' +2025-10-28 13:34:46.078 | DEBUG | main:79 - 信号处理器已注册 + → module: 'Main' +2025-10-28 13:34:46.078 | INFO | main:30 - 系统启动 - 运行在Cron调度模式 + → module: 'Main' +2025-10-28 13:34:48.476 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-28 13:34:48 + → module: 'TaskScheduler' +2025-10-28 13:34:48.476 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-28 13:34:48.631 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-28 13:34:48.632 | INFO | task_scheduler:165 - 开始执行任务: RSS基于规则数据处理 + → module: 'TaskScheduler' + → task_id: 2 + → task_name: 'RSS基于规则数据处理' +2025-10-28 13:34:48.646 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-28 13:34:48.646 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-28 13:34:48.647 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 2 + → task_name: 'RSS基于规则数据处理' +2025-10-28 13:34:48.647 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-28 13:34:48.648 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 2 + → 成功: 2 + → 失败: 0 +2025-10-28 13:34:49.021 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-28 13:34:49.022 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-28 13:34:49.048 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-28 13:34:49.079 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-28 13:34:49.082 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-28 13:34:49.089 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-27 03:04:54 + → module: 'NewsAPIClient' +2025-10-28 13:34:49.092 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-27 03:04:54 + → module: 'NewsAPIClient' +2025-10-28 13:34:49.095 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-28 13:34:49.291 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'processors.processor_rss_data' + → task_id: 2 +2025-10-28 13:34:49.291 | INFO | processor_rss_data:65 - RSS数据处理器初始化完成 + → module: 'RSSDataProcessor' +2025-10-28 13:34:49.291 | INFO | processor_rss_data:335 - 开始处理RSS数据... + → module: 'RSSDataProcessor' +2025-10-28 13:34:49.292 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT id, 文章标题, 文章摘要, 发布时间, 来源URL, 文章链接\n FROM collector_rss_subscriptions\n WHERE 是否已处理 = 0\n ORDER BY 发布时间 DESC\n LIMIT %s\n ' +2025-10-28 13:34:49.326 | INFO | processor_rss_data:107 - 成功加载 115 条未处理的RSS数据 + → module: 'RSSDataProcessor' +2025-10-28 13:34:49.327 | INFO | processor_rss_data:146 - 成功加载停用词表,共 98 个词 + → module: 'RSSDataProcessor' +2025-10-28 13:34:49.327 | INFO | processor_rss_data:82 - 成功加载汽车后市场关键词,共 37 个 + → module: 'RSSDataProcessor' +2025-10-28 13:34:49.572 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-28 13:34:49.581 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-28 13:34:49.601 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-28 13:34:49.924 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-28 13:34:49.932 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-28 13:34:49.934 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.84秒 + → module: 'NewsAPIClient' +2025-10-28 13:34:49.936 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-28 13:34:49.938 | DEBUG | rss_subscriptions:235 - 处理条目 1: 科创板科创成长层首批新注册企业上市 + → module: 'NewsAPIClient' +2025-10-28 13:34:49.938 | DEBUG | rss_subscriptions:235 - 处理条目 2: 海南洋浦港首开至秘鲁钱凯港集装箱新航线 + → module: 'NewsAPIClient' +2025-10-28 13:34:49.939 | DEBUG | rss_subscriptions:235 - 处理条目 3: G50沪渝高速垫江至长寿段改扩建工程开工 + → module: 'NewsAPIClient' +2025-10-28 13:34:49.940 | DEBUG | rss_subscriptions:235 - 处理条目 4: 广东启动夜间文旅消费促进活动 + → module: 'NewsAPIClient' +2025-10-28 13:34:49.940 | DEBUG | rss_subscriptions:235 - 处理条目 5: 四川雅砻江流域两座大型水电工程实现同步大江截流 + → module: 'NewsAPIClient' +2025-10-28 13:34:49.940 | DEBUG | rss_subscriptions:235 - 处理条目 6: 报告指全球南方成为世界经济增长的重要引擎 + → module: 'NewsAPIClient' +2025-10-28 13:34:49.941 | DEBUG | rss_subscriptions:235 - 处理条目 7: 架“桥”引客链“路”全球 浙江以开放拓新局 + → module: 'NewsAPIClient' +2025-10-28 13:34:49.941 | DEBUG | rss_subscriptions:235 - 处理条目 8: 2025第二届全球肉类产业博览会在河南郑州启幕 + → module: 'NewsAPIClient' +2025-10-28 13:34:49.945 | DEBUG | rss_subscriptions:235 - 处理条目 9: “十五五”如何扩内需:一个关键调整,三大发力方向 + → module: 'NewsAPIClient' +2025-10-28 13:34:49.946 | DEBUG | rss_subscriptions:235 - 处理条目 10: 专访陆铭:区域增长极需创新消费双轮驱动 + → module: 'NewsAPIClient' +2025-10-28 13:34:49.950 | DEBUG | rss_subscriptions:235 - 处理条目 11: 章俊:下一个五年经济增长逻辑既重创新,也重安全 + → module: 'NewsAPIClient' +2025-10-28 13:34:49.952 | DEBUG | rss_subscriptions:235 - 处理条目 12: 商务部国际司负责人解读中国—东盟自贸区3.0版升级议定书 + → module: 'NewsAPIClient' +2025-10-28 13:34:49.956 | DEBUG | rss_subscriptions:235 - 处理条目 13: 广州白云机场东塔台正式启用 第五跑道投运具备关键条件 + → module: 'NewsAPIClient' +2025-10-28 13:34:49.959 | DEBUG | rss_subscriptions:235 - 处理条目 14: 国家税务总局:前9个月办理离境退税境外旅客人数同比增长229.8% + → module: 'NewsAPIClient' +2025-10-28 13:34:49.965 | DEBUG | rss_subscriptions:235 - 处理条目 15: 第八届进博会将至 上海面向中外展客商提出系列服务措施 + → module: 'NewsAPIClient' +2025-10-28 13:34:49.968 | DEBUG | rss_subscriptions:235 - 处理条目 16: 沪指时隔十年再上4000点,这次有何不同? + → module: 'NewsAPIClient' +2025-10-28 13:34:49.971 | DEBUG | rss_subscriptions:235 - 处理条目 17: 规模再创新高!第八届进博会筹备工作基本就绪 + → module: 'NewsAPIClient' +2025-10-28 13:34:49.983 | DEBUG | rss_subscriptions:235 - 处理条目 18: 时隔十年,沪指再度站上4000点 + → module: 'NewsAPIClient' +2025-10-28 13:34:49.985 | DEBUG | rss_subscriptions:235 - 处理条目 19: 豆包联动七家博物馆 打造AI看展新体验 + → module: 'NewsAPIClient' +2025-10-28 13:34:49.996 | DEBUG | rss_subscriptions:235 - 处理条目 20: 科创板科创成长层首批新注册企业上市 + → module: 'NewsAPIClient' +2025-10-28 13:34:49.997 | DEBUG | rss_subscriptions:235 - 处理条目 21: 10月28日央行开展4753亿元7天期逆回购操作 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.001 | DEBUG | rss_subscriptions:235 - 处理条目 22: 10月28日人民币对美元中间价报7.0856元 上调25个基点 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.007 | DEBUG | rss_subscriptions:235 - 处理条目 23: 下一个五年,“开放”二字为何更显重要 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.009 | DEBUG | rss_subscriptions:235 - 处理条目 24: 从严打击4方面突出问题 中央网信办整治网络直播打赏乱象 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.012 | DEBUG | rss_subscriptions:235 - 处理条目 25: 专家:要以“全链协同”打造ESG实践的创新路径 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.020 | DEBUG | rss_subscriptions:235 - 处理条目 26: 人机共处下的生态重塑 “AI+金融”进行时 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.025 | DEBUG | rss_subscriptions:235 - 处理条目 27: 截至三季度末 普惠小微贷款余额超36万亿元 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.031 | DEBUG | rss_subscriptions:235 - 处理条目 28: 690亿“国补”落地,促消费如何再添新动力? + → module: 'NewsAPIClient' +2025-10-28 13:34:50.033 | DEBUG | rss_subscriptions:235 - 处理条目 29: 人工智能赋能中国企业“绿色竞争力” + → module: 'NewsAPIClient' +2025-10-28 13:34:50.035 | DEBUG | rss_subscriptions:235 - 处理条目 30: 国际清算银行总经理:亚洲各国经济依然展现韧性 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.054 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-28 13:34:50.057 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-28 13:34:50.083 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 30 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-28 13:34:50.620 | INFO | processor_rss_data:235 - 数据处理完成,共处理 115 条记录 + → module: 'RSSDataProcessor' +2025-10-28 13:34:50.622 | INFO | processor_rss_data:246 - 过滤出 1 条汽车后市场相关新闻 + → module: 'RSSDataProcessor' +2025-10-28 13:34:50.644 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-28 13:34:50.644 | DEBUG | mysql_agent:640 - 检查表是否存在 + → module: 'MySQLAgent(Windows)' + → 表: 'processed_rss_data' + → 存在: True +2025-10-28 13:34:50.656 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 processed_rss_data + → module: 'MySQLAgent(Windows)' +2025-10-28 13:34:50.658 | DEBUG | mysql_agent:182 - 表 processed_rss_data 包含以下列:['id', '文章标题', '文章摘要', '发布时间', '来源URL', '文章链接', '分词结果', '相关度分数', '是否汽车相关', '处理时间', '创建时间', '更新时间', '是否ai处理'] + → module: 'MySQLAgent(Windows)' +2025-10-28 13:34:50.661 | DEBUG | mysql_agent:208 - 表 processed_rss_data 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-28 13:34:50.668 | INFO | mysql_agent:294 - 表 processed_rss_data 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-28 13:34:50.669 | INFO | processor_rss_data:283 - 成功保存 1 条处理结果到数据库 + → module: 'RSSDataProcessor' +2025-10-28 13:34:50.692 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 115 +2025-10-28 13:34:50.692 | INFO | processor_rss_data:129 - 成功标记 115 条数据为已处理 + → module: 'RSSDataProcessor' +2025-10-28 13:34:50.694 | INFO | processor_rss_data:372 - RSS数据处理完成 + → module: 'RSSDataProcessor' + → total_articles: 115 + → filtered_articles: 1 + → filter_rate: 0.008695652173913044 + → processing_time: '2025-10-28 13:34:50' + → save_success: True + → mark_success: True +2025-10-28 13:34:50.695 | INFO | task_scheduler:289 - 任务执行完成,耗时: 2.05秒 + → module: 'processors.processor_rss_data' + → task_id: 2 +2025-10-28 13:34:50.704 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-28 13:34:50.705 | INFO | task_scheduler:230 - 任务执行成功: RSS基于规则数据处理 + → module: 'TaskScheduler' + → task_id: 2 + → task_name: 'RSS基于规则数据处理' +2025-10-28 13:34:50.771 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 30 + → total_inserted: 30 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-28 13:34:50.772 | INFO | rss_subscriptions:259 - 成功写入 30/30 条记录 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.772 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-28 13:34:50.772 | DEBUG | rss_subscriptions:235 - 处理条目 1: 李强出席第28次中国-东盟领导人会议 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.772 | DEBUG | rss_subscriptions:235 - 处理条目 2: 李强会见马来西亚总理安瓦尔 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.772 | DEBUG | rss_subscriptions:235 - 处理条目 3: 幸会中国 | 走进大兴安岭,见证生态兴文明兴的力量 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.773 | DEBUG | rss_subscriptions:235 - 处理条目 4: 学习新语|“积极推动构建亚太命运共同体” + → module: 'NewsAPIClient' +2025-10-28 13:34:50.773 | DEBUG | rss_subscriptions:235 - 处理条目 5: 拾光纪·呵护好中华文明瑰宝,习近平这样嘱托 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.773 | DEBUG | rss_subscriptions:235 - 处理条目 6: 署名文章:祖国必然统一势不可挡 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.774 | DEBUG | rss_subscriptions:235 - 处理条目 7: 公安机关对“台独”顽固分子沈伯洋立案侦查 国台办:正义必要之举 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.774 | DEBUG | rss_subscriptions:235 - 处理条目 8: 纪念台湾光复80周年座谈会在巴西里约热内卢召开 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.774 | DEBUG | rss_subscriptions:235 - 处理条目 9: 广东召开全省干部大会 谋划推进“十五五”时期经济社会发展 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.775 | DEBUG | rss_subscriptions:235 - 处理条目 10: 最高检:前三季度共立案食用农产品安全公益诉讼2800余件 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.775 | DEBUG | rss_subscriptions:235 - 处理条目 11: 积极引导宗教与社会主义社会相适应,为什么要强调“我国是中国共产党领导的社会主义国家”? + → module: 'NewsAPIClient' +2025-10-28 13:34:50.775 | DEBUG | rss_subscriptions:235 - 处理条目 12: 新疆生产建设兵团第二师29团党委书记宁丰接受审查调查 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.775 | DEBUG | rss_subscriptions:235 - 处理条目 13: 国台办:公安机关对沈伯洋立案侦查是反对“台独”分裂、维护国家统一的正义必要之举 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.776 | DEBUG | rss_subscriptions:235 - 处理条目 14: 华电煤业集团有限公司原副总经理陈德杰被“双开” + → module: 'NewsAPIClient' +2025-10-28 13:34:50.776 | DEBUG | rss_subscriptions:235 - 处理条目 15: 中国华电云南公司原党委委员、副总经理吴云红被“双开” + → module: 'NewsAPIClient' +2025-10-28 13:34:50.776 | DEBUG | rss_subscriptions:235 - 处理条目 16: 国台办:公安机关对沈伯洋立案侦查是反对“台独”分裂、维护国家统一的正义必要之举 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.776 | DEBUG | rss_subscriptions:235 - 处理条目 17: 公安机关决定对“台独”顽固分子沈伯洋立案侦查 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.777 | DEBUG | rss_subscriptions:235 - 处理条目 18: 中国海军83舰编队对新加坡进行友好访问 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.777 | DEBUG | rss_subscriptions:235 - 处理条目 19: 公安机关决定对“台独”顽固分子沈伯洋立案侦查 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.777 | DEBUG | rss_subscriptions:235 - 处理条目 20: 杭州海关原副厅局级干部王华雄接受审查调查 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.778 | DEBUG | rss_subscriptions:235 - 处理条目 21: 【学习贯彻党的二十届四中全会精神】为基本实现社会主义现代化而接续奋斗 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.778 | DEBUG | rss_subscriptions:235 - 处理条目 22: 第一观察|锚定目标 团结奋进 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.778 | DEBUG | rss_subscriptions:235 - 处理条目 23: 新闻多一点|故宫博物院百年守护展:一脉文渊,守望相传 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.779 | DEBUG | rss_subscriptions:235 - 处理条目 24: 特稿|推动战略合作伙伴关系不断向前发展——韩国各界对习近平主席国事访问充满热切期待 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.779 | DEBUG | rss_subscriptions:235 - 处理条目 25: 中国与东盟签署自贸区3.0版升级议定书 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.779 | DEBUG | rss_subscriptions:235 - 处理条目 26: 习言道|在尊重多样性中寻求一致性 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.780 | DEBUG | rss_subscriptions:235 - 处理条目 27: 中国国产C909飞机获得文莱民航局适航证 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.780 | DEBUG | rss_subscriptions:235 - 处理条目 28: 中国团队突破技术瓶颈 实现“人造太阳”关键核心材料国产化制备 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.780 | DEBUG | rss_subscriptions:235 - 处理条目 29: 中国代表:任何歪曲解读联大第2758号决议的行径注定不会得逞 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.780 | DEBUG | rss_subscriptions:235 - 处理条目 30: 过渡期收官在即,“十五五”如何推进乡村全面振兴 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.783 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-28 13:34:50.785 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-28 13:34:50.786 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 30 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-28 13:34:50.942 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 30 + → total_inserted: 30 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-28 13:34:50.943 | INFO | rss_subscriptions:259 - 成功写入 30/30 条记录 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.943 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-28 13:34:50.943 | DEBUG | rss_subscriptions:235 - 处理条目 1: 日媒:安倍晋三枪击案被告认罪 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.943 | DEBUG | rss_subscriptions:235 - 处理条目 2: 安倍晋三枪击案嫌疑人认罪 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.944 | DEBUG | rss_subscriptions:235 - 处理条目 3: 以色列接收一具被扣押人员遗体 以外长称拒绝土耳其军队进入加沙 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.944 | DEBUG | rss_subscriptions:235 - 处理条目 4: 苏丹武装部队撤出西部一首府城市 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.944 | DEBUG | rss_subscriptions:235 - 处理条目 5: 日媒:高市早苗与李在明拟于30日首次会谈 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.944 | DEBUG | rss_subscriptions:235 - 处理条目 6: 美国政府“停摆”将满月 美媒:社保体系将面临巨大漏洞 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.944 | DEBUG | rss_subscriptions:235 - 处理条目 7: 德媒:意大利法院再次批准引渡“北溪”爆炸案乌克兰籍嫌疑人 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.945 | DEBUG | rss_subscriptions:235 - 处理条目 8: 美军两架飞机在南海坠毁后,“尼米兹”号航母掉头返航 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.945 | DEBUG | rss_subscriptions:235 - 处理条目 9: 2025中国(衢州)马来西亚文旅推介会举办 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.945 | DEBUG | rss_subscriptions:235 - 处理条目 10: 北京电影节与圣保罗电影节共鸣:光影为桥 连通中巴 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.945 | DEBUG | rss_subscriptions:235 - 处理条目 11: 特朗普回应两架美军机在南海坠毁:可能是燃油质量问题 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.946 | DEBUG | rss_subscriptions:235 - 处理条目 12: 特朗普与高市早苗会晤 双方围绕“防卫费增额”展开攻防 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.946 | DEBUG | rss_subscriptions:235 - 处理条目 13: 佩斯科夫:“海燕”巡航导弹试验不应影响俄美关系 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.946 | DEBUG | rss_subscriptions:235 - 处理条目 14: 土耳其向英国采购20架“台风”战机 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.947 | DEBUG | rss_subscriptions:235 - 处理条目 15: 泽连斯基召开最高统帅部会议 聚焦对俄远程打击能力 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.947 | DEBUG | rss_subscriptions:235 - 处理条目 16: 克宫:俄罗斯依旧希望俄美领导人峰会成行 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.947 | DEBUG | rss_subscriptions:235 - 处理条目 17: 以军称被扣押人员全部返还前,不会停止打击哈马斯 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.947 | DEBUG | rss_subscriptions:235 - 处理条目 18: 匈牙利总理:俄美总统会晤必将在布达佩斯举行 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.947 | DEBUG | rss_subscriptions:235 - 处理条目 19: 土耳其发生6.1级地震 震源深度10公里 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.948 | DEBUG | rss_subscriptions:235 - 处理条目 20: (友城故事)第七届中美友城大会在杭州举行 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.948 | DEBUG | rss_subscriptions:235 - 处理条目 21: 保罗·比亚第八次当选喀麦隆总统 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.948 | DEBUG | rss_subscriptions:235 - 处理条目 22: 英国议会称相关庇护措施浪费数十亿英镑 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.948 | DEBUG | rss_subscriptions:235 - 处理条目 23: 英国专家:期待“十五五”规划助力全球稳定与共赢发展 开拓英中合作新机遇 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.949 | DEBUG | rss_subscriptions:235 - 处理条目 24: 澳大利亚影视从业者:澳中可加强微短剧合作 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.949 | DEBUG | rss_subscriptions:235 - 处理条目 25: 特朗普访日,日本高度安全戒备 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.949 | DEBUG | rss_subscriptions:235 - 处理条目 26: 报告称英国制造商投资增速降至2017年以来最低 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.949 | DEBUG | rss_subscriptions:235 - 处理条目 27: 加拿大各界积极评价近期中加关系进展 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.950 | DEBUG | rss_subscriptions:235 - 处理条目 28: 美国联邦食品救济将停发 超4000万人受影响 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.950 | DEBUG | rss_subscriptions:235 - 处理条目 29: 外媒解读四中全会重要精神:中国的成功将促进地区发展,激励世界 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.951 | DEBUG | rss_subscriptions:235 - 处理条目 30: 阿根廷总统米莱所在政党赢得中期选举 + → module: 'NewsAPIClient' +2025-10-28 13:34:50.954 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-28 13:34:50.955 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-28 13:34:50.957 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 30 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-28 13:34:51.129 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 30 + → total_inserted: 30 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-28 13:34:51.129 | INFO | rss_subscriptions:259 - 成功写入 30/30 条记录 + → module: 'NewsAPIClient' +2025-10-28 13:34:51.129 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-28 13:34:51.130 | DEBUG | rss_subscriptions:235 - 处理条目 1: 安倍晋三枪击案嫌疑人认罪 + → module: 'NewsAPIClient' +2025-10-28 13:34:51.130 | DEBUG | rss_subscriptions:235 - 处理条目 2: 重庆忠县300余名老人吃“坝坝宴”喜迎重阳佳节 + → module: 'NewsAPIClient' +2025-10-28 13:34:51.130 | DEBUG | rss_subscriptions:235 - 处理条目 3: 以色列接收一具被扣押人员遗体 以外长称拒绝土耳其军队进入加沙 + → module: 'NewsAPIClient' +2025-10-28 13:34:51.130 | DEBUG | rss_subscriptions:235 - 处理条目 4: 李强出席第28次中国-东盟领导人会议 + → module: 'NewsAPIClient' +2025-10-28 13:34:51.130 | DEBUG | rss_subscriptions:235 - 处理条目 5: 香港特首李家超将出席APEC第三十二次领导人非正式会议 + → module: 'NewsAPIClient' +2025-10-28 13:34:51.131 | DEBUG | rss_subscriptions:235 - 处理条目 6: 中外人士武汉共话“家住长江边” + → module: 'NewsAPIClient' +2025-10-28 13:34:51.131 | DEBUG | rss_subscriptions:235 - 处理条目 7: 李强会见马来西亚总理安瓦尔 + → module: 'NewsAPIClient' +2025-10-28 13:34:51.131 | DEBUG | rss_subscriptions:235 - 处理条目 8: 科创板科创成长层首批新注册企业上市 + → module: 'NewsAPIClient' +2025-10-28 13:34:51.131 | DEBUG | rss_subscriptions:235 - 处理条目 9: 职场纪实节目直击真实职场关系 如何平衡“情”与“理”? + → module: 'NewsAPIClient' +2025-10-28 13:34:51.131 | DEBUG | rss_subscriptions:235 - 处理条目 10: 幸会中国 | 走进大兴安岭,见证生态兴文明兴的力量 + → module: 'NewsAPIClient' +2025-10-28 13:34:51.133 | DEBUG | rss_subscriptions:235 - 处理条目 11: 学习新语|“积极推动构建亚太命运共同体” + → module: 'NewsAPIClient' +2025-10-28 13:34:51.133 | DEBUG | rss_subscriptions:235 - 处理条目 12: 拾光纪·呵护好中华文明瑰宝,习近平这样嘱托 + → module: 'NewsAPIClient' +2025-10-28 13:34:51.133 | DEBUG | rss_subscriptions:235 - 处理条目 13: 署名文章:祖国必然统一势不可挡 + → module: 'NewsAPIClient' +2025-10-28 13:34:51.134 | DEBUG | rss_subscriptions:235 - 处理条目 14: 苏丹武装部队撤出西部一首府城市 + → module: 'NewsAPIClient' +2025-10-28 13:34:51.134 | DEBUG | rss_subscriptions:235 - 处理条目 15: 公安机关对“台独”顽固分子沈伯洋立案侦查 国台办:正义必要之举 + → module: 'NewsAPIClient' +2025-10-28 13:34:51.134 | DEBUG | rss_subscriptions:235 - 处理条目 16: 海南洋浦港首开至秘鲁钱凯港集装箱新航线 + → module: 'NewsAPIClient' +2025-10-28 13:34:51.134 | DEBUG | rss_subscriptions:235 - 处理条目 17: 纪念台湾光复80周年座谈会在巴西里约热内卢召开 + → module: 'NewsAPIClient' +2025-10-28 13:34:51.135 | DEBUG | rss_subscriptions:235 - 处理条目 18: 广东召开全省干部大会 谋划推进“十五五”时期经济社会发展 + → module: 'NewsAPIClient' +2025-10-28 13:34:51.135 | DEBUG | rss_subscriptions:235 - 处理条目 19: (乡村行·看振兴)福建宁化:“鱼鳞坑”筑起生态链 促小茶果成大产业 + → module: 'NewsAPIClient' +2025-10-28 13:34:51.135 | DEBUG | rss_subscriptions:235 - 处理条目 20: 产教融合“破题”人才瓶颈 山东职教赋能区域经济提质增效 + → module: 'NewsAPIClient' +2025-10-28 13:34:51.135 | DEBUG | rss_subscriptions:235 - 处理条目 21: (乡村行·看振兴)“实验田”变“丰收地” 山西朔州“田秀才”逐梦乡村 + → module: 'NewsAPIClient' +2025-10-28 13:34:51.135 | DEBUG | rss_subscriptions:235 - 处理条目 22: G50沪渝高速垫江至长寿段改扩建工程开工 + → module: 'NewsAPIClient' +2025-10-28 13:34:51.136 | DEBUG | rss_subscriptions:235 - 处理条目 23: 广东启动夜间文旅消费促进活动 + → module: 'NewsAPIClient' +2025-10-28 13:34:51.136 | DEBUG | rss_subscriptions:235 - 处理条目 24: 江西(九江)网球公开赛:中国选手郑妩双迎职业生涯巡回赛正赛首胜 + → module: 'NewsAPIClient' +2025-10-28 13:34:51.136 | DEBUG | rss_subscriptions:235 - 处理条目 25: 中国铁塔:织密通信网 架起“连心桥” + → module: 'NewsAPIClient' +2025-10-28 13:34:51.136 | DEBUG | rss_subscriptions:235 - 处理条目 26: 上海交大原创话剧《钱学森》登陆湖南高校 + → module: 'NewsAPIClient' +2025-10-28 13:34:51.136 | DEBUG | rss_subscriptions:235 - 处理条目 27: 四川雅砻江流域两座大型水电工程实现同步大江截流 + → module: 'NewsAPIClient' +2025-10-28 13:34:51.137 | DEBUG | rss_subscriptions:235 - 处理条目 28: 古蜀文明催热四川文博经济:文化遗产赋能文旅融合创新表达 + → module: 'NewsAPIClient' +2025-10-28 13:34:51.137 | DEBUG | rss_subscriptions:235 - 处理条目 29: 报告指全球南方成为世界经济增长的重要引擎 + → module: 'NewsAPIClient' +2025-10-28 13:34:51.137 | DEBUG | rss_subscriptions:235 - 处理条目 30: “两个成都” 如何绘出万千气象? + → module: 'NewsAPIClient' +2025-10-28 13:34:51.141 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 collector_rss_subscriptions + → module: 'MySQLAgent(Windows)' +2025-10-28 13:34:51.142 | DEBUG | mysql_agent:182 - 表 collector_rss_subscriptions 包含以下列:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'MySQLAgent(Windows)' +2025-10-28 13:34:51.143 | DEBUG | mysql_agent:208 - 表 collector_rss_subscriptions 的过滤后DataFrame:共 30 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-28 13:34:51.155 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 0 + → error_message: "Duplicate entry '安倍晋三枪击案嫌疑人认罪-2025-10-28 05:23:53' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '安倍晋三枪击案嫌疑人认罪...', '文章链接': 'http://www.chinanews.com/gj/2025/10-28/10505669.shtml...', '文章摘要': '当地时间28日下午,日本奈良地方法院对前首相安倍晋三枪击案进行首次公开庭审。嫌疑人山上彻也承认检方所指控犯杀人罪、违反枪刀法等起诉内容。...', '发布时间': '2025-10-2... +2025-10-28 13:34:51.177 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 2 + → error_message: "Duplicate entry '以色列接收一具被扣押人员遗体 以外长称拒绝土' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '以色列接收一具被扣押人员遗体 以外长称拒绝土耳其军队进入加沙...', '文章链接': 'http://www.chinanews.com/gj/2025/10-28/10505664.shtml...', '文章摘要': '中新社北京10月28日电 综合消息:以色列当地时间27日接收了一具被扣押人员遗体。以色列外交部长萨尔当天表示,以方不会允许土耳其军队参与监督加沙地带... +2025-10-28 13:34:51.191 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 3 + → error_message: "Duplicate entry '李强出席第28次中国-东盟领导人会议-2025-10-28 05' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '李强出席第28次中国-东盟领导人会议...', '文章链接': 'http://www.chinanews.com/gn/2025/10-28/10505668.shtml...', '文章摘要': '新华社吉隆坡10月28日电(记者王嘉伟 袁睿)当地时间10月28日,国务院总理李强在马来西亚吉隆坡出席第28次中国-东盟领导人会议。...', '发布时间': '2025-... +2025-10-28 13:34:51.238 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 6 + → error_message: "Duplicate entry '李强会见马来西亚总理安瓦尔-2025-10-28 05:13:18' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '李强会见马来西亚总理安瓦尔...', '文章链接': 'http://www.chinanews.com/gn/2025/10-28/10505666.shtml...', '文章摘要': '新华社吉隆坡10月28日电(记者毛鹏飞 费列娜)当地时间10月28日,国务院总理李强在吉隆坡会见马来西亚总理安瓦尔。...', '发布时间': '2025-10-28 05:13:1... +2025-10-28 13:34:51.248 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 7 + → error_message: "Duplicate entry '科创板科创成长层首批新注册企业上市-2025-10-28 0' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '科创板科创成长层首批新注册企业上市...', '文章链接': 'http://www.chinanews.com/cj/2025/10-28/10505662.shtml...', '文章摘要': '中新网上海10月28日电 (高志苗 康玉湛)首批三家新注册的科创板科创成长层企业28日在上海证券交易所挂牌上市。...', '发布时间': '2025-10-28 05:12... +2025-10-28 13:34:51.288 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 9 + → error_message: "Duplicate entry '幸会中国 | 走进大兴安岭,见证生态兴文明兴的å' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '幸会中国 | 走进大兴安岭,见证生态兴文明兴的力量...', '文章链接': 'http://www.chinanews.com/gn/2025/10-28/10505661.shtml...', '文章摘要': '在中国广袤的大地上,有这样一些地方,藏着人与自然最和谐、最动人的相遇。纪录片《幸会中国》走访全国12个生态样本地,用镜头记录下这些真实而温柔的故事。这一站,我... +2025-10-28 13:34:51.294 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 10 + → error_message: "Duplicate entry '学习新语|“积极推动构建亚太命运共同体”-202' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '学习新语|“积极推动构建亚太命运共同体”...', '文章链接': 'http://www.chinanews.com/gn/2025/10-28/10505660.shtml...', '文章摘要': '10月30日至11月1日,国家主席习近平将赴韩国庆州出席亚太经合组织第三十二次领导人非正式会议并对韩国进行国事访问。...', '发布时间': '2025-10-28 ... +2025-10-28 13:34:51.300 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 11 + → error_message: "Duplicate entry '拾光纪·呵护好中华文明瑰宝,习近平这样嘱托-2' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '拾光纪·呵护好中华文明瑰宝,习近平这样嘱托...', '文章链接': 'http://www.chinanews.com/gn/2025/10-28/10505659.shtml...', '文章摘要': '10月27日,习近平参观“百年守护——从紫禁城到故宫博物院”展览。赓续中华文脉、谱写时代华章,习近平嘱托将中华文明瑰宝呵护好、弘扬好、发展好。...', '发布时间'... +2025-10-28 13:34:51.307 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 12 + → error_message: "Duplicate entry '署名文章:祖国必然统一势不可挡-2025-10-28 04:30:4' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '署名文章:祖国必然统一势不可挡...', '文章链接': 'http://www.chinanews.com/gn/2025/10-28/10505654.shtml...', '文章摘要': '新华社北京10月28日电 题:祖国必然统一势不可挡...', '发布时间': '2025-10-28 04:30:45...', '来源URL': 'https://www.ch... +2025-10-28 13:34:51.312 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 13 + → error_message: "Duplicate entry '苏丹武装部队撤出西部一首府城市-2025-10-28 04:19:4' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '苏丹武装部队撤出西部一首府城市...', '文章链接': 'http://www.chinanews.com/gj/2025/10-28/10505651.shtml...', '文章摘要': '中新社北京10月28日电 喀土穆消息:苏丹主权委员会主席兼武装部队总司令布尔汉当地时间27日表示,苏丹武装部队已从该国西部北达尔富尔州首府法希尔市撤出。...', '发布时间':... +2025-10-28 13:34:51.320 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 14 + → error_message: "Duplicate entry '公安机关对“台独”顽固分子沈伯洋立案侦查 国' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '公安机关对“台独”顽固分子沈伯洋立案侦查 国台办:正义必要之举...', '文章链接': 'http://www.chinanews.com/gn/2025/10-28/10505650.shtml...', '文章摘要': '中新社北京10月28日电 重庆市公安局28日宣布,对“台独”顽固分子沈伯洋涉嫌分裂国家犯罪立案侦查。国务院台办发言人陈斌华当天表示,这是反对“台独... +2025-10-28 13:34:51.339 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 15 + → error_message: "Duplicate entry '海南洋浦港首开至秘鲁钱凯港集装箱新航线-2025-1' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '海南洋浦港首开至秘鲁钱凯港集装箱新航线...', '文章链接': 'http://www.chinanews.com/cj/2025/10-28/10505649.shtml...', '文章摘要': '中新社海南洋浦10月28日电 (舒云行)中国远洋海运集团有限公司(简称“中远海运”)旗下海南港航控股有限公司28日发布消息,“远东—南美西”航线27日晚由海南洋浦港首航秘... +2025-10-28 13:34:51.355 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 16 + → error_message: "Duplicate entry '纪念台湾光复80周年座谈会在巴西里约热内卢召å¼' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '纪念台湾光复80周年座谈会在巴西里约热内卢召开...', '文章链接': 'http://www.chinanews.com/gn/2025/10-28/10505641.shtml...', '文章摘要': '中新网圣保罗10月28日电 当地时间10月27日,中国驻里约热内卢总领馆举办纪念台湾光复80周年座谈会。中国驻里约热内卢总领事田敏出席并讲话,领区主要侨团、华侨华... +2025-10-28 13:34:51.359 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 17 + → error_message: "Duplicate entry '广东召开全省干部大会 谋划推进“十五五”时期' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '广东召开全省干部大会 谋划推进“十五五”时期经济社会发展...', '文章链接': 'http://www.chinanews.com/gn/2025/10-28/10505646.shtml...', '文章摘要': '中新网广州10月28日电 (记者 程景伟)广东全省干部大会27日在广州召开,认真传达学习习近平总书记在党的二十届四中全会上的重要讲话和全会精神,结合学习... +2025-10-28 13:34:51.379 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 21 + → error_message: "Duplicate entry 'G50沪渝高速垫江至长寿段改扩建工程开工-2025-10-2' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': 'G50沪渝高速垫江至长寿段改扩建工程开工...', '文章链接': 'http://www.chinanews.com/cj/2025/10-28/10505634.shtml...', '文章摘要': '中新网重庆10月28日电 (张旭)10月28日,重庆市交通运输委员会发布消息,当日,G50沪渝高速垫江至长寿段改扩建工程(简称“垫长高速改扩建项目”)正式开工建设。..... +2025-10-28 13:34:51.383 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 22 + → error_message: "Duplicate entry '广东启动夜间文旅消费促进活动-2025-10-28 04:01:28' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '广东启动夜间文旅消费促进活动...', '文章链接': 'http://www.chinanews.com/cj/2025/10-28/10505633.shtml...', '文章摘要': '中新网广州10月28日电 (记者 程景伟)“粤夜粤美 畅赏湾区”2025年广东省夜间文化和旅游消费促进活动27日晚在广州塔启动。...', '发布时间': '2025-10-28 ... +2025-10-28 13:34:51.401 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 26 + → error_message: "Duplicate entry '四川雅砻江流域两座大型水电工程实现同步大江æ' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '四川雅砻江流域两座大型水电工程实现同步大江截流...', '文章链接': 'http://www.chinanews.com/cj/2025/10-28/10505625.shtml...', '文章摘要': '中新网成都10月28日电 (记者 王鹏)28日,位于四川的雅砻江中游河段,总装机270万千瓦的两座大型水电站——孟底沟水电站、牙根一级水电站实现同步大江截流。..... +2025-10-28 13:34:51.411 | WARNING | mysql_agent:253 - 表 collector_rss_subscriptions 中跳过重复记录 + → module: 'MySQLAgent(Windows)' + → index: 28 + → error_message: "Duplicate entry '报告指全球南方成为世界经济增长的重要引擎-202' for key 'collector_rss_subscriptions.idx_title_pubtime'" + → record: {'文章标题': '报告指全球南方成为世界经济增长的重要引擎...', '文章链接': 'http://www.chinanews.com/cj/2025/10-28/10505618.shtml...', '文章摘要': '中新社北京10月28日电 (记者 刘亮)中国国际发展知识中心28日发布的《全球发展报告2025》指出,全球南方正群体性崛起,成为世界经济增长的重要引擎。...', '发... +2025-10-28 13:34:51.417 | INFO | mysql_agent:294 - 表 collector_rss_subscriptions 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 30 + → total_inserted: 12 + → total_duplicates: 18 + → total_failed: 0 + → failed_records_count: 18 +2025-10-28 13:34:51.417 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '安倍晋三枪击案嫌疑人认罪-2025-10-28 05:23:53' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 2, '... + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '安倍晋三枪击案嫌疑人认罪-2025-10-28 05:23:53' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标... +2025-10-28 13:34:51.418 | INFO | rss_subscriptions:259 - 成功写入 12/30 条记录 + → module: 'NewsAPIClient' +2025-10-28 13:34:51.420 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-28 05:31:25 + → module: 'NewsAPIClient' +2025-10-28 13:34:51.421 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-28 05:31:25 + → module: 'NewsAPIClient' +2025-10-28 13:34:51.421 | INFO | task_scheduler:289 - 任务执行完成,耗时: 2.77秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-28 13:34:51.431 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-28 13:34:51.431 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-28 13:34:58.649 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-28 13:34:58 + → module: 'TaskScheduler' +2025-10-28 13:34:58.649 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-28 13:35:08.657 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-28 13:35:08 + → module: 'TaskScheduler' +2025-10-28 13:35:08.657 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-28 13:35:08.687 | INFO | task_scheduler:165 - 开始执行任务: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-28 13:35:08.720 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-28 13:35:08.720 | DEBUG | task_scheduler:182 - 任务已提交至后台执行队列 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-28 13:35:08.721 | DEBUG | task_scheduler:287 - 开始执行任务入口函数 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-28 13:35:08.721 | INFO | rss_subscriptions:46 - 新闻API客户端初始化完成,已连接到数据库 + → module: 'NewsAPIClient' +2025-10-28 13:35:08.721 | INFO | task_scheduler:145 - 任务调度周期完成 + → module: 'TaskScheduler' + → 总任务数: 1 + → 成功: 1 + → 失败: 0 +2025-10-28 13:35:08.724 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-28 13:35:08.729 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 9 +2025-10-28 13:35:08.729 | INFO | rss_subscriptions:84 - 数据库表结构验证通过,当前字段:['id', '文章标题', '文章链接', '文章摘要', '发布时间', '来源URL', '创建时间', '更新时间', '是否已处理'] + → module: 'NewsAPIClient' +2025-10-28 13:35:08.730 | DEBUG | rss_subscriptions:98 - 加载上次更新时间: 2025-10-28 05:31:25 + → module: 'NewsAPIClient' +2025-10-28 13:35:08.730 | INFO | rss_subscriptions:299 - 上次更新时间: 2025-10-28 05:31:25 + → module: 'NewsAPIClient' +2025-10-28 13:35:08.730 | INFO | rss_subscriptions:302 - 开始获取RSS源数据... + → module: 'NewsAPIClient' +2025-10-28 13:35:09.098 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/china.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-28 13:35:09.117 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/world.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-28 13:35:09.127 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/finance.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-28 13:35:09.378 | DEBUG | rss_subscriptions:134 - 成功获取 https://www.chinanews.com.cn/rss/scroll-news.xml 的RSS数据 + → module: 'NewsAPIClient' +2025-10-28 13:35:09.379 | INFO | rss_subscriptions:161 - RSS源获取完成,成功获取 4/4 个源 + → module: 'NewsAPIClient' +2025-10-28 13:35:09.380 | INFO | rss_subscriptions:305 - 获取完成,耗时: 0.65秒 + → module: 'NewsAPIClient' +2025-10-28 13:35:09.380 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/china.xml + → module: 'NewsAPIClient' +2025-10-28 13:35:09.381 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/world.xml + → module: 'NewsAPIClient' +2025-10-28 13:35:09.382 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/finance.xml + → module: 'NewsAPIClient' +2025-10-28 13:35:09.382 | INFO | rss_subscriptions:218 - 开始处理 RSS 源: https://www.chinanews.com.cn/rss/scroll-news.xml + → module: 'NewsAPIClient' +2025-10-28 13:35:09.384 | DEBUG | rss_subscriptions:114 - 已保存本次更新时间: 2025-10-28 05:31:25 + → module: 'NewsAPIClient' +2025-10-28 13:35:09.384 | INFO | rss_subscriptions:317 - 本次最新更新时间: 2025-10-28 05:31:25 + → module: 'NewsAPIClient' +2025-10-28 13:35:09.384 | INFO | task_scheduler:289 - 任务执行完成,耗时: 0.66秒 + → module: 'collectors.rss_subscriptions.NewsAPIClient' + → task_id: 1 +2025-10-28 13:35:09.393 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 1 +2025-10-28 13:35:09.393 | INFO | task_scheduler:230 - 任务执行成功: RSS新闻订阅 + → module: 'TaskScheduler' + → task_id: 1 + → task_name: 'RSS新闻订阅' +2025-10-28 13:35:18.723 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-28 13:35:18 + → module: 'TaskScheduler' +2025-10-28 13:35:18.723 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-28 13:35:28.729 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-28 13:35:28 + → module: 'TaskScheduler' +2025-10-28 13:35:28.729 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-28 13:35:38.747 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-28 13:35:38 + → module: 'TaskScheduler' +2025-10-28 13:35:38.747 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-28 13:35:48.754 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-28 13:35:48 + → module: 'TaskScheduler' +2025-10-28 13:35:48.754 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-28 13:35:58.783 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-28 13:35:58 + → module: 'TaskScheduler' +2025-10-28 13:35:58.783 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-28 13:36:08.807 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-28 13:36:08 + → module: 'TaskScheduler' +2025-10-28 13:36:08.807 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-28 13:36:18.814 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-28 13:36:18 + → module: 'TaskScheduler' +2025-10-28 13:36:18.814 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-28 13:36:28.822 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-28 13:36:28 + → module: 'TaskScheduler' +2025-10-28 13:36:28.822 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-28 13:36:38.842 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-28 13:36:38 + → module: 'TaskScheduler' +2025-10-28 13:36:38.842 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-28 13:36:48.848 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-28 13:36:48 + → module: 'TaskScheduler' +2025-10-28 13:36:48.848 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-28 13:36:58.867 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-28 13:36:58 + → module: 'TaskScheduler' +2025-10-28 13:36:58.867 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-28 13:37:08.874 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-28 13:37:08 + → module: 'TaskScheduler' +2025-10-28 13:37:08.874 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-28 13:37:18.904 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-28 13:37:18 + → module: 'TaskScheduler' +2025-10-28 13:37:18.904 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-28 13:37:28.911 | DEBUG | task_scheduler:102 - 当前检查时间: 2025-10-28 13:37:28 + → module: 'TaskScheduler' +2025-10-28 13:37:28.911 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT *\n FROM main_task\n WHERE is_active = 1\n AND next_run_time <= %s\n AND is_running = 0\n ORDER BY next_run_time\n ' +2025-10-28 13:39:14.412 | INFO | processor_rss_data:65 - RSS数据处理器初始化完成 + → module: 'RSSDataProcessor' +2025-10-28 13:39:14.412 | INFO | processor_rss_data:335 - 开始处理RSS数据... + → module: 'RSSDataProcessor' +2025-10-28 13:39:14.412 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT id, 文章标题, 文章摘要, 发布时间, 来源URL, 文章链接\n FROM collector_rss_subscriptions\n WHERE 是否已处理 = 0\n ORDER BY 发布时间 DESC\n LIMIT %s\n ' +2025-10-28 13:39:14.477 | ERROR | mysql_agent:90 - 连接失败 + → module: 'MySQLAgent(Windows)' + → error: '(1049, "Unknown database \'intelligence_system\'")' + → error_type: 'OperationalError' + → host: '123.60.167.249' + → port: 3306 + → database: 'intelligence_system' + → exc_info: True +2025-10-28 13:39:14.477 | ERROR | mysql_agent:139 - SQL查询失败 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT id, 文章标题, 文章摘要, 发布时间, 来源URL, 文章链接\n FROM collector_rss_subscriptions\n WHERE 是否已处理 = 0\n ORDER BY 发布时间 DESC\n LIMIT %s\n ' + → params: (5000,) + → error: '(1049, "Unknown database \'intelligence_system\'")' + → error_type: 'OperationalError' + → exc_info: True +2025-10-28 13:39:14.477 | ERROR | processor_rss_data:111 - 加载RSS数据失败: (1049, "Unknown database 'intelligence_system'") + → module: 'RSSDataProcessor' + → exc_info: True +2025-10-28 13:39:14.481 | WARNING | processor_rss_data:340 - 没有加载到RSS数据 + → module: 'RSSDataProcessor' +2025-10-28 13:41:02.100 | INFO | processor_rss_data:65 - RSS数据处理器初始化完成 + → module: 'RSSDataProcessor' +2025-10-28 13:41:02.100 | INFO | processor_rss_data:335 - 开始处理RSS数据... + → module: 'RSSDataProcessor' +2025-10-28 13:41:02.100 | DEBUG | mysql_agent:116 - 执行SQL查询 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT id, 文章标题, 文章摘要, 发布时间, 来源URL, 文章链接\n FROM collector_rss_subscriptions\n WHERE 是否已处理 = 0\n ORDER BY 发布时间 DESC\n LIMIT %s\n ' +2025-10-28 13:41:02.509 | INFO | processor_rss_data:107 - 成功加载 102 条未处理的RSS数据 + → module: 'RSSDataProcessor' +2025-10-28 13:41:02.510 | INFO | processor_rss_data:146 - 成功加载停用词表,共 98 个词 + → module: 'RSSDataProcessor' +2025-10-28 13:41:02.511 | INFO | processor_rss_data:82 - 成功加载汽车后市场关键词,共 37 个 + → module: 'RSSDataProcessor' +2025-10-28 13:41:03.527 | INFO | processor_rss_data:235 - 数据处理完成,共处理 102 条记录 + → module: 'RSSDataProcessor' +2025-10-28 13:41:03.529 | INFO | processor_rss_data:246 - 过滤出 1 条汽车后市场相关新闻 + → module: 'RSSDataProcessor' +2025-10-28 13:41:03.628 | DEBUG | mysql_agent:609 - 查询执行完成 + → module: 'MySQLAgent(Windows)' + → 行数: 1 +2025-10-28 13:41:03.628 | DEBUG | mysql_agent:640 - 检查表是否存在 + → module: 'MySQLAgent(Windows)' + → 表: 'processed_rss_data' + → 存在: True +2025-10-28 13:41:03.705 | DEBUG | mysql_agent:176 - 已建立连接,准备插入数据到 processed_rss_data + → module: 'MySQLAgent(Windows)' +2025-10-28 13:41:03.721 | DEBUG | mysql_agent:182 - 表 processed_rss_data 包含以下列:['id', '文章标题', '文章摘要', '发布时间', '来源URL', '文章链接', '分词结果', '相关度分数', '是否汽车相关', '处理时间', '创建时间', '更新时间', '是否ai处理'] + → module: 'MySQLAgent(Windows)' +2025-10-28 13:41:03.723 | DEBUG | mysql_agent:208 - 表 processed_rss_data 的过滤后DataFrame:共 1 行待插入 + → module: 'MySQLAgent(Windows)' +2025-10-28 13:41:03.763 | INFO | mysql_agent:294 - 表 processed_rss_data 插入结果汇总 + → module: 'MySQLAgent(Windows)' + → total_to_insert: 1 + → total_inserted: 1 + → total_duplicates: 0 + → total_failed: 0 + → failed_records_count: 0 +2025-10-28 13:41:03.764 | INFO | processor_rss_data:283 - 成功保存 1 条处理结果到数据库 + → module: 'RSSDataProcessor' +2025-10-28 13:41:03.875 | DEBUG | mysql_agent:614 - 更新执行完成 + → module: 'MySQLAgent(Windows)' + → 受影响行数: 102 +2025-10-28 13:41:03.875 | INFO | processor_rss_data:129 - 成功标记 102 条数据为已处理 + → module: 'RSSDataProcessor' +2025-10-28 13:41:03.876 | INFO | processor_rss_data:372 - RSS数据处理完成 + → module: 'RSSDataProcessor' + → total_articles: 102 + → filtered_articles: 1 + → filter_rate: 0.00980392156862745 + → processing_time: '2025-10-28 13:41:03' + → save_success: True + → mark_success: True diff --git a/logs/errors.log b/logs/errors.log index b5fd0b6..5d3b5f9 100644 --- a/logs/errors.log +++ b/logs/errors.log @@ -68981,3 +68981,264 @@ → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '“维护和平,共创未来”纪念研讨会在日本福冈ä' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 1, 'type': 'du... → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '“维护和平,共创未来”纪念研讨会在日本福冈ä' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '“维护和平... +2025-10-23 17:25:10.628 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '日媒:日本新任首相高市早苗定于24日发表施政æ¼' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '日媒:日本新任首相高市早苗定于24日发表施政æ¼' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '日媒:... + +2025-10-23 17:50:03.236 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '换罐15分钟、续航4000公里 2025绿色能源发展大会å' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '换罐15分钟、续航4000公里 2025绿色能源发展大会å' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题'... + +2025-10-23 17:55:03.685 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '国家金融监管总局肖远企:AI在金融领域作用仍æ\x98' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '国家金融监管总局肖远企:AI在金融领域作用仍æ\x98' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '... + +2025-10-23 18:15:05.663 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '受权发布丨中国共产党中央军事委员会副主席张å' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 1, 'type': 'du... + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '受权发布丨中国共产党中央军事委员会副主席张å' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '受权发布丨... + +2025-10-23 18:20:05.986 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '十四届全国人大常委会第十八次会议相关法律案ç' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '十四届全国人大常委会第十八次会议相关法律案ç' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '十四届全国... + +2025-10-23 18:35:07.263 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '“十四五”山西晋中能源发展全景图:煤更优、ç' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '“十四五”山西晋中能源发展全景图:煤更优、ç' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '“十四五”... + +2025-10-23 19:05:10.109 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '2025豫台经贸洽谈会签约超293亿元-2025-10-23 10:58:28' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '2025豫台经贸洽谈会签约超293亿元-2025-10-23 10:58:28' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record'... + +2025-10-23 19:10:10.664 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 2, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '上海首发“进博会溢出联动政策包”-2025-10-23 11:0' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 2, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '上海首发“进博会溢出联动政策包”-2025-10-23 11:0' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标... + +2025-10-23 19:20:01.616 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 7, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '突发:以军空袭黎巴嫩东部 称打击真主党导弹设' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 8, 'type': 'du... + → detailed_failed_records: [{'index': 7, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '突发:以军空袭黎巴嫩东部 称打击真主党导弹设' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '突发:以军... + +2025-10-23 19:35:03.144 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 2, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '东西问丨意大利汉学家里卡多·波佐:如何通过æ\x96' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 3, 'type':... + → detailed_failed_records: [{'index': 2, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '东西问丨意大利汉学家里卡多·波佐:如何通过æ\x96' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '东... + +2025-10-23 19:45:03.931 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '第24届汕头·澄海国际玩具礼品博览会举行-2025-10-' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 3, 'typ... + → detailed_failed_records: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '第24届汕头·澄海国际玩具礼品博览会举行-2025-10-' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题':... + +2025-10-23 19:50:04.321 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '第八届进博会展品锡兰红茶抵沪-2025-10-23 11:43:57' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '第八届进博会展品锡兰红茶抵沪-2025-10-23 11:43:57' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文... + +2025-10-23 20:00:05.324 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '国际大都市科技创新能力研究报告在沪发布-2025-1' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 4, 'type':... + → detailed_failed_records: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '国际大都市科技创新能力研究报告在沪发布-2025-1' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '国... + +2025-10-23 20:15:06.631 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 2, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '科技企业领军 中国企业加速“出海”中东地区-20' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 2, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '科技企业领军 中国企业加速“出海”中东地区-20' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '科技企... + +2025-10-23 20:25:07.542 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '中新天津生态城发布国际市场准入方案 助力国内' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '中新天津生态城发布国际市场准入方案 助力国内' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '中新天津生... + +2025-10-23 20:35:08.462 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '“两岸关系新形势”学术研讨会暨清华两岸论坛å' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '“两岸关系新形势”学术研讨会暨清华两岸论坛å' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '“两岸关系... + +2025-10-23 20:50:09.992 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '一图速览四中全会公报-2025-10-23 12:43:45' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '一图速览四中全会公报-2025-10-23 12:43:45' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题'... + +2025-10-23 21:05:01.330 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 3, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '扎哈罗娃:欧盟制裁拓展空间已近极限,俄保留å' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 3, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '扎哈罗娃:欧盟制裁拓展空间已近极限,俄保留å' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '扎哈罗娃:... + +2025-10-23 21:10:01.739 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '风险谁来担?比利时与卢森堡首相就对乌贷款方æ' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '风险谁来担?比利时与卢森堡首相就对乌贷款方æ' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '风险谁来担... + +2025-10-23 21:15:02.214 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '党的二十届四中全会公报,这些表述值得关注-202' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 2, 'type': '... + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '党的二十届四中全会公报,这些表述值得关注-202' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '党的二... + +2025-10-23 21:25:03.182 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '经纬线·绿色回响-2025-10-23 13:15:25' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '经纬线·绿色回响-2025-10-23 13:15:25' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': ... + +2025-10-23 21:30:03.623 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 3, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '(经济观察)北京风能展明星产品反映“大风车â' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 5, 'type': 'du... + → detailed_failed_records: [{'index': 3, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '(经济观察)北京风能展明星产品反映“大风车â' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '(经济观察... + +2025-10-23 21:45:04.962 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '日本外相最新涉华表态:致力于推动两国间战略ä' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '日本外相最新涉华表态:致力于推动两国间战略ä' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '日本外相最... + +2025-10-23 21:50:05.510 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 4, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '《2025中国数字文创城市指数》发布 京沪深蓉杭å±' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 5, 'type':... + → detailed_failed_records: [{'index': 4, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '《2025中国数字文创城市指数》发布 京沪深蓉杭å±' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '《... + +2025-10-23 21:55:05.949 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 3, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '中国矿产资源报告:铜、铁、磷等矿产资源量大å' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 3, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '中国矿产资源报告:铜、铁、磷等矿产资源量大å' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '中国矿产资... + +2025-10-23 22:00:06.446 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 3, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '新石器无人车获6亿美元融资 无人配送车需求有æ\x9c' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 3, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '新石器无人车获6亿美元融资 无人配送车需求有æ\x9c' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '... + +2025-10-23 22:10:07.479 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '夯实基础全面发力 四中全会为中国未来五年明调' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '夯实基础全面发力 四中全会为中国未来五年明调' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '夯实基础全... + +2025-10-23 22:25:09.055 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '中国又一个五年目标-2025-10-23 14:19:35' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '中国又一个五年目标-2025-10-23 14:19:35' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题':... + +2025-10-23 23:30:05.142 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '两岸学人对谈台湾光复:以史为鉴,共推民族复å' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '两岸学人对谈台湾光复:以史为鉴,共推民族复å' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '两岸学人对... + +2025-10-24 00:30:10.762 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '中宣部组织召开学习宣传贯彻党的二十届四中全ä' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '中宣部组织召开学习宣传贯彻党的二十届四中全ä' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '中宣部组织... + +2025-10-24 05:45:10.408 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '晚播小麦如何保产量?霜降抢秋该怎么抢?专家å' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '晚播小麦如何保产量?霜降抢秋该怎么抢?专家å' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '晚播小麦如... + +2025-10-24 05:55:01.583 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '欧盟领导人会议闭幕 聚焦乌克兰局势与欧洲防务' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '欧盟领导人会议闭幕 聚焦乌克兰局势与欧洲防务' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '欧盟领导人... + +2025-10-24 06:05:02.443 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '美国务卿与以总理会面 强调重视巩固加沙停火协' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '美国务卿与以总理会面 强调重视巩固加沙停火协' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '美国务卿与... + +2025-10-24 07:35:10.910 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '中方:当前的加沙停火应当成为全面持久停火的å' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 2, 'type': 'du... + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '中方:当前的加沙停火应当成为全面持久停火的å' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '中方:当前... + +2025-10-24 08:15:04.360 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '美国战略轰炸机抵近委内瑞拉-2025-10-24 00:07:02' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '美国战略轰炸机抵近委内瑞拉-2025-10-24 00:07:02' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章... + +2025-10-24 08:30:05.718 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '解放军报社论:坚定捍卫人民军队政治本色-2025-1' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '解放军报社论:坚定捍卫人民军队政治本色-2025-1' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '解... + +2025-10-24 09:15:09.624 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '柬埔寨重申打击网赌电诈等跨国犯罪决心-2025-10-2' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 2, 'type... + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '柬埔寨重申打击网赌电诈等跨国犯罪决心-2025-10-2' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': ... + +2025-10-24 09:35:01.368 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '首艘、首颗、首飞!中国制造硬核实力再出圈 连' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 1, 'type': 'du... + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '首艘、首颗、首飞!中国制造硬核实力再出圈 连' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '首艘、首颗... + +2025-10-24 09:45:02.278 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '杨振宁遗体告别仪式在京举行,八宝山革命公墓å' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '杨振宁遗体告别仪式在京举行,八宝山革命公墓å' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '杨振宁遗体... + +2025-10-24 09:55:03.350 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '长城 Hi4 技术体系斩获“科学技术奖特等奖” 喜' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 1, 'type':... + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '长城 Hi4 技术体系斩获“科学技术奖特等奖” 喜' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '长... + +2025-10-24 10:15:05.069 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '时政新闻眼丨未来五年怎么干?党的二十届四中å' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 1, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '时政新闻眼丨未来五年怎么干?党的二十届四中å' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '时政新闻眼... + +2025-10-24 10:25:06.264 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '新华图讯|中共中央举行新闻发布会 介绍和解读' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 1, 'type': 'du... + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '新华图讯|中共中央举行新闻发布会 介绍和解读' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '新华图讯|... + +2025-10-24 10:40:07.596 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '山城直播盛典启幕 “直播+”绘就重庆消费新图æ\x99' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 3, 'type'... + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '山城直播盛典启幕 “直播+”绘就重庆消费新图æ\x99' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '... + +2025-10-24 10:45:08.108 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '“2025生态保护与绿色发展论坛·广州”在暨南大å' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 1, 'type': ... + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '“2025生态保护与绿色发展论坛·广州”在暨南大å' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '“2... + +2025-10-24 10:50:08.775 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 3, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '一滴水 如何汇入幸福河湖?——农工党中央主办' for key 'collector_rss_subscriptions.idx_title_pubtime'"}] + → detailed_failed_records: [{'index': 3, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '一滴水 如何汇入幸福河湖?——农工党中央主办' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '一滴水 如... + +2025-10-27 10:49:23.458 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 6, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '前三季度企业创新力度加大 新质生产力加快培育' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 7, 'type': 'du... + → detailed_failed_records: [{'index': 6, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '前三季度企业创新力度加大 新质生产力加快培育' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标题': '前三季度企... + +2025-10-27 10:55:06.148 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '韩国3500亿美元对美投资承诺陷入僵局-2025-10-27 02:' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 2,... + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '韩国3500亿美元对美投资承诺陷入僵局-2025-10-27 02:' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文... + +2025-10-28 13:34:51.417 | ERROR | mysql_agent:305 - 表 collector_rss_subscriptions 插入失败记录详情 + → module: 'MySQLAgent(Windows)' + → failed_records_summary: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '安倍晋三枪击案嫌疑人认罪-2025-10-28 05:23:53' for key 'collector_rss_subscriptions.idx_title_pubtime'"}, {'index': 2, '... + → detailed_failed_records: [{'index': 0, 'type': 'duplicate', 'error_code': 1062, 'error_message': "Duplicate entry '安倍晋三枪击案嫌疑人认罪-2025-10-28 05:23:53' for key 'collector_rss_subscriptions.idx_title_pubtime'", 'record': {'文章标... + +2025-10-28 13:39:14.477 | ERROR | mysql_agent:90 - 连接失败 + → module: 'MySQLAgent(Windows)' + → error: '(1049, "Unknown database \'intelligence_system\'")' + → error_type: 'OperationalError' + → host: '123.60.167.249' + → port: 3306 + → database: 'intelligence_system' + → exc_info: True + +2025-10-28 13:39:14.477 | ERROR | mysql_agent:139 - SQL查询失败 + → module: 'MySQLAgent(Windows)' + → sql: '\n SELECT id, 文章标题, 文章摘要, 发布时间, 来源URL, 文章链接\n FROM collector_rss_subscriptions\n WHERE 是否已处理 = 0\n ORDER BY 发布时间 DESC\n LIMIT %s\n ' + → params: (5000,) + → error: '(1049, "Unknown database \'intelligence_system\'")' + → error_type: 'OperationalError' + → exc_info: True + +2025-10-28 13:39:14.477 | ERROR | processor_rss_data:111 - 加载RSS数据失败: (1049, "Unknown database 'intelligence_system'") + → module: 'RSSDataProcessor' + → exc_info: True + diff --git a/main.py b/main.py index 406f7ad..cba60c9 100644 --- a/main.py +++ b/main.py @@ -11,17 +11,32 @@ log = CrossPlatformLog.get_logger("Main") class IntelligenceSystem: - def __init__(self, db_config=None): - """初始化系统(仅作为容器,不包含业务逻辑)""" + def __init__(self, db_config=None, run_all_on_startup=False): + """初始化系统(仅作为容器,不包含业务逻辑) + + Args: + db_config: 数据库配置 + run_all_on_startup: 启动时是否立即执行所有到期任务(默认False) + """ self.scheduler = TaskScheduler(Config.MYSQL_CONFIG, max_workers=5) self._running = False - log.info("情报系统已初始化(Cron模式)") + self.run_all_on_startup = run_all_on_startup + log.info(f"情报系统已初始化(Cron模式),启动时执行任务: {run_all_on_startup}") def start(self): """启动系统主入口""" self._running = True self._setup_signal_handlers() log.info("系统启动 - 运行在Cron调度模式") + + # 启动时执行所有到期任务(如果开关开启) + if self.run_all_on_startup: + print(f"\n{'='*60}") + print("🚀 启动时执行所有到期任务...") + print(f"{'='*60}\n") + log.info("启动时执行所有到期任务") + result = self.scheduler.check_and_run_tasks(print_empty_status=True) + print(f"\n启动任务执行完成: 总数={result['总任务数']}, 成功={result['成功']}, 失败={result['失败']}\n") # 时间追踪变量 last_status_print_time = time.time() # 上次打印状态的时间 @@ -110,7 +125,9 @@ class IntelligenceSystem: if __name__ == "__main__": try: # 启动系统 - 仅作为入口,不包含调度逻辑 - system = IntelligenceSystem() + # run_all_on_startup=True: 启动时立即执行所有到期任务 + # run_all_on_startup=False: 启动时不执行任务,等待下次调度周期 + system = IntelligenceSystem(run_all_on_startup=False) system.start() except Exception as e: log.critical("情报系统启动失败", exc_info=True) diff --git a/output/last_update.pkl b/output/last_update.pkl index 3d9cd28e90483a55321c40ad88cc5b6f075ecdfd..c6de0291242983f43f3054ab00e18b016dc49496 100644 GIT binary patch delta 18 ZcmXptouI)h!zwSyz`!u2bxP0_JpdvD1WEt^ delta 18 ZcmXptouI)h&dF-dz`!u2bxP0_JpdvA1Wf<{ diff --git a/processors/ai_processors/ai_processor_rss_data.py b/processors/ai_processors/ai_processor_rss_data.py new file mode 100644 index 0000000..1d43d8f --- /dev/null +++ b/processors/ai_processors/ai_processor_rss_data.py @@ -0,0 +1,453 @@ +# RSS数据AI处理模块 +import os +import sys +import json +import time +import pandas as pd +from typing import List, Dict, Any, Optional +from datetime import datetime +from openai import OpenAI + +# 添加项目根目录到路径 +current_dir = os.path.dirname(os.path.abspath(__file__)) +parent_dir = os.path.dirname(os.path.dirname(current_dir)) +if parent_dir not in sys.path: + sys.path.insert(0, parent_dir) + +from utils.mysql_agent import MySQLAgent +from utils.logger import log +from config import Config + + +class RSSDataAIProcessor: + """RSS数据AI处理主类 + + 负责: + - 从数据库加载未处理的RSS数据 + - 调用AI进行分析 + - 保存分析结果 + - 更新处理状态 + """ + + def __init__(self): + """初始化AI处理器""" + self.log = log.bind(module="RSSDataAIProcessor") + self.db_agent = MySQLAgent(Config.MYSQL_CONFIG) + + # 从Config读取配置 + self.source_table = Config.AI_PROCESSOR_CONFIG['source_table'] + self.ai_table = Config.AI_PROCESSOR_CONFIG['result_table'] + self.default_batch_size = Config.AI_PROCESSOR_CONFIG['batch_size'] + self.default_delay = Config.AI_PROCESSOR_CONFIG['delay'] + + # 初始化百度千帆API客户端 + self.api_key = Config.BAIDU_AI_CONFIG.get('api_key') + if self.api_key: + self.ai_client = OpenAI( + base_url='https://qianfan.baidubce.com/v2', + api_key=self.api_key + ) + self.model = Config.BAIDU_AI_CONFIG.get('model', 'ernie-x1-turbo-32k') + self.log.info("RSS数据AI处理器初始化完成") + else: + self.ai_client = None + self.log.warning("百度AI未配置,AI处理功能将不可用") + self.log.warning("请在config.py中配置 BAIDU_AI_CONFIG['api_key']") + + def is_configured(self) -> bool: + """检查是否已配置API""" + return self.ai_client is not None + + def main(self, batch_size: Optional[int] = 200, delay: Optional[float] = None) -> Dict[str, Any]: + """主程序:批量处理RSS数据的完整流程 + + Args: + batch_size: 批量处理的记录数,None则使用配置的默认值 + delay: 每条记录之间的延迟(秒),None则使用配置的默认值 + + Returns: + dict: 处理结果统计信息 + """ + # 使用传入参数或默认配置 + batch_size = batch_size or self.default_batch_size + delay = delay or self.default_delay + + try: + # 1. 检查配置 + if not self.is_configured(): + error_msg = "百度AI未配置,请在config.py中配置 BAIDU_AI_CONFIG['api_key']" + self.log.error(error_msg) + return { + 'success': False, + 'message': error_msg, + 'processed_count': 0, + 'failed_count': 0 + } + + self.log.info(f"开始批量处理数据,批次大小: {batch_size}, 延迟: {delay}秒") + + # 2. 准备数据库表结构 + self.ensure_ai_processed_column() + if not self.db_agent.table_exists(self.ai_table): + self.create_ai_result_table() + + # 3. 加载未处理的数据 + df = self.load_unprocessed_data(batch_size) + if df.empty: + self.log.info("没有需要处理的数据") + return { + 'success': True, + 'message': '没有需要处理的数据', + 'processed_count': 0, + 'failed_count': 0 + } + + # 4. 处理每条记录 + results = [] + processed_ids = [] + failed_count = 0 + + for idx, record in df.iterrows(): + try: + self.log.debug(f"处理记录 {record['id']} ({idx + 1}/{len(df)})") + + result = self.process_single_record(record.to_dict()) + + if result: + results.append(result) + processed_ids.append(record['id']) + else: + failed_count += 1 + + # 延迟,避免API限流 + if delay > 0 and idx < len(df) - 1: + time.sleep(delay) + + except Exception as e: + self.log.error(f"处理记录 {record['id']} 异常: {str(e)}", exc_info=True) + failed_count += 1 + + # 5. 保存结果 + saved_count = 0 + if results: + saved_count = self.save_ai_results(results) + + # 6. 标记为已处理 + if processed_ids: + self.mark_as_processed(processed_ids) + + # 7. 返回统计信息 + stats = { + 'success': True, + 'message': 'AI处理完成', + 'total_count': len(df), + 'processed_count': len(processed_ids), + 'saved_count': saved_count, + 'failed_count': failed_count, + 'relevant_count': sum(1 for r in results if r.get('是否相关')), + 'processing_time': datetime.now().strftime('%Y-%m-%d %H:%M:%S') + } + + self.log.info("批量处理完成", **stats) + return stats + + except Exception as e: + error_msg = f"批量处理失败: {str(e)}" + self.log.error(error_msg, exc_info=True) + return { + 'success': False, + 'message': error_msg, + 'processed_count': 0, + 'failed_count': 0 + } + + def ensure_ai_processed_column(self): + """确保processed_rss_data表有"是否ai处理"字段""" + try: + # 检查字段是否存在 + check_sql = """ + SELECT COUNT(*) as count + FROM information_schema.COLUMNS + WHERE TABLE_SCHEMA = %s + AND TABLE_NAME = %s + AND COLUMN_NAME = '是否ai处理' + """ + + result = self.db_agent.execute_sql( + check_sql, + params=(Config.MYSQL_CONFIG['database'], self.source_table), + fetch=True + ) + + if result[0][0] == 0: + # 字段不存在,添加字段 + alter_sql = f""" + ALTER TABLE {self.source_table} + ADD COLUMN 是否ai处理 TINYINT(1) DEFAULT 0 COMMENT 'AI处理标记:0-未处理,1-已处理' + """ + self.db_agent.execute_sql(alter_sql) + self.log.info(f"成功为表 {self.source_table} 添加 '是否ai处理' 字段") + else: + self.log.debug(f"表 {self.source_table} 已存在 '是否ai处理' 字段") + + except Exception as e: + self.log.error(f"检查/添加字段失败: {str(e)}", exc_info=True) + raise + + def create_ai_result_table(self): + """创建AI处理结果表""" + create_sql = f""" + CREATE TABLE IF NOT EXISTS {self.ai_table} ( + id INT AUTO_INCREMENT PRIMARY KEY COMMENT '主键ID', + source_id INT NOT NULL COMMENT '来源数据ID(processed_rss_data.id)', + 文章标题 TEXT COMMENT '文章标题', + 文章摘要 TEXT COMMENT '文章摘要', + 发布时间 DATETIME COMMENT '发布时间', + 来源URL VARCHAR(1024) COMMENT '来源URL', + 文章链接 VARCHAR(1024) COMMENT '文章链接', + 是否相关 BOOLEAN COMMENT 'AI判断是否与汽车后市场相关', + 相关度评分 INT COMMENT '相关度评分(0-100)', + 标签 TEXT COMMENT 'AI生成的标签(JSON数组)', + 分类 VARCHAR(100) COMMENT 'AI判断的主要分类', + 分析说明 TEXT COMMENT 'AI分析说明', + 处理时间 DATETIME COMMENT 'AI处理时间', + 创建时间 TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '记录创建时间', + 更新时间 TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '记录更新时间', + INDEX idx_source_id (source_id), + INDEX idx_是否相关 (是否相关), + INDEX idx_分类 (分类), + INDEX idx_处理时间 (处理时间) + ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='RSS数据AI分析结果表' + """ + + try: + self.db_agent.execute_sql(create_sql) + self.log.info(f"成功创建AI结果表: {self.ai_table}") + except Exception as e: + self.log.error(f"创建AI结果表失败: {str(e)}", exc_info=True) + raise + + def load_unprocessed_data(self, limit: int = 100) -> pd.DataFrame: + """加载未经AI处理的数据 + + Args: + limit: 每次处理的记录数量 + + Returns: + 未处理的数据DataFrame + """ + try: + sql = f""" + SELECT id, 文章标题, 文章摘要, 发布时间, 来源URL, 文章链接 + FROM {self.source_table} + WHERE 是否ai处理 = 0 OR 是否ai处理 IS NULL + ORDER BY 创建时间 DESC + LIMIT %s + """ + + df = self.db_agent.query_to_df(sql, params=(limit,), is_print=False) + self.log.info(f"成功加载 {len(df)} 条未处理的数据") + return df + + except Exception as e: + self.log.error(f"加载未处理数据失败: {str(e)}", exc_info=True) + return pd.DataFrame() + + def analyze_news(self, title: str, summary: str) -> Dict[str, Any]: + """调用AI分析新闻(保留原有提示词)""" + # 构建提示词(保留原有格式) + prompt = f"""分析以下新闻是否与汽车后市场相关,返回JSON格式: + +标题:{title} +摘要:{summary} + +返回格式: +{{ + "is_relevant": true/false, + "relevance_score": 0-100, + "tags": ["标签1", "标签2"], + "category": "分类(配件/维修/保养/改装/美容/装饰/二手车/金融/保险/其他)", + "analysis": "简要说明" +}} + +注意:只返回JSON格式的结果,不要包含其他说明文字。""" + + try: + # 调用百度千帆API + response = self.ai_client.chat.completions.create( + model=self.model, + messages=[{ + "role": "user", + "content": prompt + }] + ) + + # 获取响应内容 + raw_content = response.choices[0].message.content + + # 解析JSON(处理markdown包裹) + if '```json' in raw_content: + json_str = raw_content.split('```json')[1].split('```')[0].strip() + elif '```' in raw_content: + json_str = raw_content.split('```')[1].split('```')[0].strip() + else: + json_str = raw_content.strip() + + result = json.loads(json_str) + + # 补充缺失字段 + return { + 'is_relevant': result.get('is_relevant', False), + 'relevance_score': result.get('relevance_score', 0), + 'tags': result.get('tags', []), + 'category': result.get('category', '其他'), + 'analysis': result.get('analysis', '') + } + + except json.JSONDecodeError as e: + self.log.warning(f"JSON解析失败: {str(e)}, 原始响应: {raw_content[:200]}") + return { + 'is_relevant': False, + 'relevance_score': 0, + 'tags': [], + 'category': '其他', + 'analysis': f"解析失败: {raw_content[:100]}" + } + except Exception as e: + self.log.error(f"AI调用异常: {str(e)}", exc_info=True) + return { + 'is_relevant': False, + 'relevance_score': 0, + 'tags': [], + 'category': '其他', + 'analysis': f"处理异常: {str(e)}" + } + + def process_single_record(self, record: Dict[str, Any]) -> Optional[Dict[str, Any]]: + """处理单条记录 + + Args: + record: 记录字典 + + Returns: + 处理结果字典 + """ + if not self.is_configured(): + self.log.error("AI客户端未配置,无法处理数据") + return None + + try: + title = str(record.get('文章标题', '')).strip() + summary = str(record.get('文章摘要', '')).strip() + + if not title and not summary: + self.log.warning(f"记录 {record.get('id')} 标题和摘要均为空,跳过处理") + return None + + # 调用AI分析 + analysis_result = self.analyze_news(title, summary) + + # 构建结果记录 + result = { + 'source_id': record['id'], + '文章标题': title, + '文章摘要': summary, + '发布时间': record.get('发布时间'), + '来源URL': record.get('来源URL'), + '文章链接': record.get('文章链接'), + '是否相关': analysis_result.get('is_relevant', False), + '相关度评分': analysis_result.get('relevance_score', 0), + '标签': json.dumps(analysis_result.get('tags', []), ensure_ascii=False), + '分类': analysis_result.get('category', '其他'), + '分析说明': analysis_result.get('analysis', ''), + '处理时间': datetime.now() + } + + return result + + except Exception as e: + self.log.error(f"处理记录 {record.get('id')} 失败: {str(e)}", exc_info=True) + return None + + def save_ai_results(self, results: List[Dict[str, Any]]) -> int: + """保存AI处理结果 + + Args: + results: 处理结果列表 + + Returns: + 成功保存的记录数 + """ + if not results: + return 0 + + try: + df = pd.DataFrame(results) + inserted = self.db_agent.insert_from_df( + table_name=self.ai_table, + df=df, + ignore_duplicates=True + ) + self.log.info(f"成功保存 {inserted} 条AI处理结果") + return inserted + + except Exception as e: + self.log.error(f"保存AI处理结果失败: {str(e)}", exc_info=True) + return 0 + + def mark_as_processed(self, ids: List[int]) -> bool: + """标记记录为已处理 + + Args: + ids: 记录ID列表 + + Returns: + 是否成功 + """ + if not ids: + return True + + try: + id_placeholders = ','.join(['%s'] * len(ids)) + sql = f""" + UPDATE {self.source_table} + SET 是否ai处理 = 1 + WHERE id IN ({id_placeholders}) + """ + + self.db_agent.execute_sql(sql, params=ids) + self.log.info(f"成功标记 {len(ids)} 条记录为已处理") + return True + + except Exception as e: + self.log.error(f"标记记录为已处理失败: {str(e)}", exc_info=True) + return False + + +if __name__ == "__main__": + """命令行直接运行""" + # 实例化处理器并调用main方法 + processor = RSSDataAIProcessor() + result = processor.main() + + # 输出结果 + if result['success']: + print("\n" + "=" * 60) + print("✓ AI处理完成") + print("=" * 60) + print(f"总记录数: {result.get('total_count', 0)}") + print(f"成功处理: {result.get('processed_count', 0)}") + print(f"保存记录: {result.get('saved_count', 0)}") + print(f"失败记录: {result.get('failed_count', 0)}") + print(f"相关记录: {result.get('relevant_count', 0)}") + print(f"处理时间: {result.get('processing_time', '')}") + print("=" * 60 + "\n") + else: + print("\n" + "=" * 60) + print("✗ 处理失败") + print("=" * 60) + print(f"错误信息: {result['message']}") + print("\n提示: 请设置环境变量") + print(" Windows: $env:BAIDU_API_KEY = 'your_key'") + print(" Linux/Mac: export BAIDU_API_KEY='your_key'") + print("=" * 60 + "\n") diff --git a/processors/image_processor.py b/processors/image_processor.py deleted file mode 100644 index e69de29..0000000 diff --git a/processors/text_processor.py b/processors/text_processor.py deleted file mode 100644 index e69de29..0000000 diff --git a/tools/task_manager.ipynb b/tools/task_manager.ipynb index 76f0cfe..1dae43c 100644 --- a/tools/task_manager.ipynb +++ b/tools/task_manager.ipynb @@ -791,7 +791,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 3, "id": "94892f4134316f8e", "metadata": { "ExecuteTime": { @@ -828,35 +828,12 @@ "name": "stdout", "output_type": "stream", "text": [ - "\u001b[32m2025-10-23 16:57:20\u001b[0m | \u001b[1mINFO \u001b[0m | \u001b[36mmysql_agent\u001b[0m - \u001b[1m查询执行成功\u001b[0m\n", - "\u001b[32m2025-10-23 16:57:20\u001b[0m | \u001b[1mINFO \u001b[0m | \u001b[36mprocessor_rss_data\u001b[0m - \u001b[1mRSS数据处理器初始化完成\u001b[0m\n", - "\u001b[32m2025-10-23 16:57:20\u001b[0m | \u001b[1mINFO \u001b[0m | \u001b[36mprocessor_rss_data\u001b[0m - \u001b[1m开始处理RSS数据...\u001b[0m\n", - "\u001b[32m2025-10-23 16:57:21\u001b[0m | \u001b[1mINFO \u001b[0m | \u001b[36mprocessor_rss_data\u001b[0m - \u001b[1m成功加载 8 条未处理的RSS数据\u001b[0m\n", - "\u001b[32m2025-10-23 16:57:21\u001b[0m | \u001b[33m\u001b[1mWARNING \u001b[0m | \u001b[36mprocessor_rss_data\u001b[0m - \u001b[33m\u001b[1m停用词文件不存在: processors/stopwords.txt,使用默认停用词\u001b[0m\n", - "\u001b[32m2025-10-23 16:57:21\u001b[0m | \u001b[33m\u001b[1mWARNING \u001b[0m | \u001b[36mprocessor_rss_data\u001b[0m - \u001b[33m\u001b[1m关键词文件不存在: processors/keywords.txt\u001b[0m\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "Building prefix dict from the default dictionary ...\n", - "Loading model from cache C:\\Users\\zy187\\AppData\\Local\\Temp\\jieba.cache\n", - "Loading model cost 0.609 seconds.\n", - "Prefix dict has been built successfully.\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[32m2025-10-23 16:57:21\u001b[0m | \u001b[1mINFO \u001b[0m | \u001b[36mprocessor_rss_data\u001b[0m - \u001b[1m数据处理完成,共处理 8 条记录\u001b[0m\n", - "\u001b[32m2025-10-23 16:57:21\u001b[0m | \u001b[1mINFO \u001b[0m | \u001b[36mprocessor_rss_data\u001b[0m - \u001b[1m过滤出 1 条汽车后市场相关新闻\u001b[0m\n", - "\u001b[32m2025-10-23 16:57:21\u001b[0m | \u001b[1mINFO \u001b[0m | \u001b[36mmysql_agent\u001b[0m - \u001b[1m表 processed_rss_data 插入结果汇总\u001b[0m\n", - "\u001b[32m2025-10-23 16:57:21\u001b[0m | \u001b[1mINFO \u001b[0m | \u001b[36mprocessor_rss_data\u001b[0m - \u001b[1m成功保存 1 条处理结果到数据库\u001b[0m\n", - "\u001b[32m2025-10-23 16:57:21\u001b[0m | \u001b[1mINFO \u001b[0m | \u001b[36mprocessor_rss_data\u001b[0m - \u001b[1m成功标记 8 条数据为已处理\u001b[0m\n", - "\u001b[32m2025-10-23 16:57:21\u001b[0m | \u001b[1mINFO \u001b[0m | \u001b[36mprocessor_rss_data\u001b[0m - \u001b[1mRSS数据处理完成\u001b[0m\n", - "\u001b[32m2025-10-23 16:57:21\u001b[0m | \u001b[1mINFO \u001b[0m | \u001b[36mtask_scheduler\u001b[0m - \u001b[1m任务执行完成,耗时: 1.19秒\u001b[0m\n" + "\u001b[32m2025-10-23 16:59:03\u001b[0m | \u001b[1mINFO \u001b[0m | \u001b[36mmysql_agent\u001b[0m - \u001b[1m查询执行成功\u001b[0m\n", + "\u001b[32m2025-10-23 16:59:03\u001b[0m | \u001b[1mINFO \u001b[0m | \u001b[36mprocessor_rss_data\u001b[0m - \u001b[1mRSS数据处理器初始化完成\u001b[0m\n", + "\u001b[32m2025-10-23 16:59:03\u001b[0m | \u001b[1mINFO \u001b[0m | \u001b[36mprocessor_rss_data\u001b[0m - \u001b[1m开始处理RSS数据...\u001b[0m\n", + "\u001b[32m2025-10-23 16:59:03\u001b[0m | \u001b[1mINFO \u001b[0m | \u001b[36mprocessor_rss_data\u001b[0m - \u001b[1m成功加载 0 条未处理的RSS数据\u001b[0m\n", + "\u001b[32m2025-10-23 16:59:03\u001b[0m | \u001b[33m\u001b[1mWARNING \u001b[0m | \u001b[36mprocessor_rss_data\u001b[0m - \u001b[33m\u001b[1m没有加载到RSS数据\u001b[0m\n", + "\u001b[32m2025-10-23 16:59:03\u001b[0m | \u001b[1mINFO \u001b[0m | \u001b[36mtask_scheduler\u001b[0m - \u001b[1m任务执行完成,耗时: 0.01秒\u001b[0m\n" ] }, { @@ -886,7 +863,7 @@ { "data": { "text/markdown": [ - "**执行时长**: 1.26 秒" + "**执行时长**: 0.02 秒" ], "text/plain": [ "" @@ -923,8 +900,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "RSS数据处理完成!\n", - "处理统计: {'total_articles': 8, 'filtered_articles': 1, 'filter_rate': 0.125, 'processing_time': '2025-10-23 16:57:21', 'save_success': True, 'mark_success': True}\n", + "处理失败: 没有数据可处理\n", "\n" ] }, @@ -958,12 +934,12 @@ "{'success': True,\n", " 'task_name': 'RSS基于规则数据处理',\n", " 'task_id': 2,\n", - " 'execution_time': 1.2610254287719727,\n", - " 'output': \"RSS数据处理完成!\\n处理统计: {'total_articles': 8, 'filtered_articles': 1, 'filter_rate': 0.125, 'processing_time': '2025-10-23 16:57:21', 'save_success': True, 'mark_success': True}\\n\",\n", + " 'execution_time': 0.023162126541137695,\n", + " 'output': '处理失败: 没有数据可处理\\n',\n", " 'error': None}" ] }, - "execution_count": 2, + "execution_count": 3, "metadata": {}, "output_type": "execute_result" }