Thu Jan 8 23:24:19 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Thu Jan 8 23:24:19 2026] *** Thu Jan 8 23:24:19 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Thu Jan 8 23:24:19 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Thu Jan 8 23:24:19 2026 - nodename: ubserver Thu Jan 8 23:24:19 2026 - machine: x86_64 Thu Jan 8 23:24:19 2026 - clock source: unix Thu Jan 8 23:24:19 2026 - pcre jit disabled Thu Jan 8 23:24:19 2026 - detected number of CPU cores: 12 Thu Jan 8 23:24:19 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:24:19 2026 - writing pidfile to ./uwsgi-wechat.pid Thu Jan 8 23:24:19 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Thu Jan 8 23:24:19 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:24:19 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:24:19 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:24:19 2026 - your processes number limit is 61306 Thu Jan 8 23:24:19 2026 - your memory page size is 4096 bytes Thu Jan 8 23:24:19 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Thu Jan 8 23:24:19 2026 - detected max file descriptor number: 1024 Thu Jan 8 23:24:19 2026 - lock engine: pthread robust mutexes Thu Jan 8 23:24:19 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Thu Jan 8 23:24:19 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 4 Thu Jan 8 23:24:19 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:42415 (port auto-assigned) fd 3 Thu Jan 8 23:24:19 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:24:19 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:24:19 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Thu Jan 8 23:24:19 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:24:19 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:24:19 2026 - Python main interpreter initialized at 0x70efb4752d10 Thu Jan 8 23:24:19 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:24:19 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:24:19 2026 - python threads support enabled Thu Jan 8 23:24:19 2026 - your server socket listen backlog is limited to 100 connections Thu Jan 8 23:24:19 2026 - your mercy for graceful operations on workers is 60 seconds Thu Jan 8 23:24:19 2026 - mapped 250032 bytes (244 KB) for 4 cores Thu Jan 8 23:24:19 2026 - *** Operational MODE: preforking+threaded *** 2026-01-08 23:24:20 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-08 23:24:20 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Thu Jan 8 23:24:20 2026 - WSGI app 0 (mountpoint='') ready in 1 seconds on interpreter 0x70efb4752d10 pid: 1602880 (default app) Thu Jan 8 23:24:20 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:24:20 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:24:20 2026 - *** uWSGI is running in multiple interpreter mode *** Thu Jan 8 23:24:20 2026 - spawned uWSGI master process (pid: 1602880) Thu Jan 8 23:24:20 2026 - spawned uWSGI worker 1 (pid: 1602899, cores: 2) Thu Jan 8 23:24:20 2026 - spawned uWSGI worker 2 (pid: 1602900, cores: 2) Thu Jan 8 23:24:20 2026 - spawned uWSGI http 1 (pid: 1602903) Thu Jan 8 23:24:20 2026 - Python auto-reloader enabled 2026-01-08 23:24:40 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-08 23:24:40 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: 29e+mJkgneFeo1ny28a6GEST9jWQZ520LjorzV4NOfgoH5QA/W... 2026-01-08 23:24:40 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 79b6eafce857f4ef43b5e61edc1fe207cda31b3f 2026-01-08 23:24:40 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 79b6eafce857f4ef43b5e61edc1fe207cda31b3f 2026-01-08 23:24:40 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-08 23:24:40 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-08 23:24:40 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=event 2026-01-08 23:24:40 - gx_gp_monitor.wechat.callback_server - INFO - 处理事件消息: event=click, event_key=crawl_now, user=WeiJueSen 2026-01-08 23:24:40 - gx_gp_monitor.wechat.message_handler - INFO - 处理事件: click, key: crawl_now, user: WeiJueSen 2026-01-08 23:24:40 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 触发立即搜索 2026-01-08 23:24:40 - gx_gp_monitor.main - INFO - === 广西政府采购网公告监控系统启动 === 2026-01-08 23:24:40 - gx_gp_monitor.main - INFO - 版本: 1.0.0 2026-01-08 23:24:40 - gx_gp_monitor.main - INFO - 配置文件: 默认配置 2026-01-08 23:24:40 - gx_gp_monitor.core.reliability - INFO - 健康检查通过 2026-01-08 23:24:40 - gx_gp_monitor.core.database - INFO - 数据库连接池初始化成功 2026-01-08 23:24:40 - gx_gp_monitor.core.database - INFO - 开始初始化数据库表结构 2026-01-08 23:24:40 - gx_gp_monitor.core.database - INFO - 数据库表结构初始化完成 2026-01-08 23:24:40 - gx_gp_monitor.storage.postgresql - INFO - 存储初始化完成 2026-01-08 23:24:40 - gx_gp_monitor.main - INFO - 应用初始化完成 2026-01-08 23:24:40 - gx_gp_monitor.main - INFO - 开始执行搜索任务 (手动搜索: False) 2026-01-08 23:24:40 - gx_gp_monitor.crawler.spider - INFO - 开始爬取 13 个公告来源 2026-01-08 23:24:40 - gx_gp_monitor - INFO - 开始爬取 采购公告 2026-01-08 23:24:45 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-08 23:24:45 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: 29e+mJkgneFeo1ny28a6GEST9jWQZ520LjorzV4NOfgoH5QA/W... 2026-01-08 23:24:45 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 79b6eafce857f4ef43b5e61edc1fe207cda31b3f 2026-01-08 23:24:45 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 79b6eafce857f4ef43b5e61edc1fe207cda31b3f 2026-01-08 23:24:45 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-08 23:24:45 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-08 23:24:45 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=event 2026-01-08 23:24:45 - gx_gp_monitor.wechat.callback_server - INFO - 处理事件消息: event=click, event_key=crawl_now, user=WeiJueSen 2026-01-08 23:24:45 - gx_gp_monitor.wechat.message_handler - INFO - 处理事件: click, key: crawl_now, user: WeiJueSen 2026-01-08 23:24:45 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 触发立即搜索 2026-01-08 23:24:45 - gx_gp_monitor.main - INFO - 开始执行搜索任务 (手动搜索: False) 2026-01-08 23:24:45 - gx_gp_monitor.crawler.spider - INFO - 开始爬取 13 个公告来源 2026-01-08 23:24:45 - gx_gp_monitor - INFO - 开始爬取 采购公告 2026-01-08 23:24:45 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-08 23:24:45 - gx_gp_monitor - INFO - 采购公告 爬取完成,共获取 100 条公告,耗时 0.43秒 2026-01-08 23:24:45 - gx_gp_monitor - INFO - 开始爬取 结果公告 2026-01-08 23:24:46 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-08 23:24:46 - gx_gp_monitor - INFO - 结果公告 爬取完成,共获取 100 条公告,耗时 0.21秒 2026-01-08 23:24:46 - gx_gp_monitor - INFO - 开始爬取 合同公告 2026-01-08 23:24:46 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-08 23:24:46 - gx_gp_monitor - INFO - 合同公告 爬取完成,共获取 100 条公告,耗时 0.23秒 2026-01-08 23:24:46 - gx_gp_monitor - INFO - 开始爬取 更正公告 2026-01-08 23:24:46 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-08 23:24:46 - gx_gp_monitor - INFO - 更正公告 爬取完成,共获取 100 条公告,耗时 0.23秒 2026-01-08 23:24:46 - gx_gp_monitor - INFO - 开始爬取 招标文件预公示 2026-01-08 23:24:47 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-08 23:24:47 - gx_gp_monitor - INFO - 招标文件预公示 爬取完成,共获取 100 条公告,耗时 0.61秒 2026-01-08 23:24:47 - gx_gp_monitor - INFO - 开始爬取 单一来源公示 2026-01-08 23:24:47 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-08 23:24:47 - gx_gp_monitor - INFO - 单一来源公示 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-08 23:24:47 - gx_gp_monitor - INFO - 开始爬取 电子卖场公示 2026-01-08 23:24:47 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-08 23:24:47 - gx_gp_monitor - INFO - 电子卖场公示 爬取完成,共获取 100 条公告,耗时 0.43秒 2026-01-08 23:24:47 - gx_gp_monitor - INFO - 开始爬取 履约验收公示 2026-01-08 23:24:48 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-08 23:24:48 - gx_gp_monitor - INFO - 履约验收公示 爬取完成,共获取 100 条公告,耗时 0.30秒 2026-01-08 23:24:48 - gx_gp_monitor - INFO - 开始爬取 工程类公告 2026-01-08 23:24:48 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-08 23:24:48 - gx_gp_monitor - INFO - 工程类公告 爬取完成,共获取 100 条公告,耗时 0.21秒 2026-01-08 23:24:48 - gx_gp_monitor - INFO - 开始爬取 框架协议征集公告 2026-01-08 23:24:48 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-08 23:24:48 - gx_gp_monitor - INFO - 框架协议征集公告 爬取完成,共获取 100 条公告,耗时 0.22秒 2026-01-08 23:24:48 - gx_gp_monitor - INFO - 开始爬取 框架协议入围结果公告 2026-01-08 23:24:48 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-08 23:24:48 - gx_gp_monitor - INFO - 框架协议入围结果公告 爬取完成,共获取 100 条公告,耗时 0.22秒 2026-01-08 23:24:48 - gx_gp_monitor - INFO - 开始爬取 框架协议成交结果汇总公告 2026-01-08 23:24:49 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-08 23:24:49 - gx_gp_monitor - INFO - 框架协议成交结果汇总公告 爬取完成,共获取 100 条公告,耗时 0.26秒 2026-01-08 23:24:49 - gx_gp_monitor - INFO - 开始爬取 采购意向公开 2026-01-08 23:24:49 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-08 23:24:49 - gx_gp_monitor - INFO - 采购意向公开 爬取完成,共获取 100 条公告,耗时 0.21秒 2026-01-08 23:24:49 - gx_gp_monitor.crawler.spider - INFO - 爬取完成: 共处理 13 个来源,成功 13 个,失败 0 个,获取 1300 条公告 2026-01-08 23:24:49 - gx_gp_monitor.main - INFO - 搜索到 1300 条原始公告 2026-01-08 23:24:49 - gx_gp_monitor.storage.postgresql - INFO - 开始按来源保存 1300 条公告,每个来源最多保留 100 条 2026-01-08 23:24:49 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-08 23:24:49 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement1 保存了 0 条公告 2026-01-08 23:24:49 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-08 23:24:49 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement2 保存了 0 条公告 2026-01-08 23:24:49 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-08 23:24:49 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement3 保存了 0 条公告 2026-01-08 23:24:49 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-08 23:24:49 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement4 保存了 0 条公告 2026-01-08 23:24:49 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-08 23:24:49 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement5 保存了 0 条公告 2026-01-08 23:24:49 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-08 23:24:49 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement6 保存了 0 条公告 2026-01-08 23:24:49 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-08 23:24:49 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement7 保存了 0 条公告 2026-01-08 23:24:49 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-08 23:24:49 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement10 保存了 0 条公告 2026-01-08 23:24:49 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-08 23:24:49 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement11 保存了 0 条公告 2026-01-08 23:24:49 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-08 23:24:49 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement20 保存了 0 条公告 2026-01-08 23:24:49 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-08 23:24:49 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement21 保存了 0 条公告 2026-01-08 23:24:49 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-08 23:24:49 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement23 保存了 0 条公告 2026-01-08 23:24:49 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-08 23:24:49 - gx_gp_monitor.storage.postgresql - INFO - 来源 61-266648 保存了 0 条公告 2026-01-08 23:24:49 - gx_gp_monitor.storage.postgresql - INFO - 按来源保存完成,总计保存 0 条公告 2026-01-08 23:24:49 - gx_gp_monitor.main - INFO - 保存所有公告完成:共保存 0 条,按来源统计: {'ZcyAnnouncement1': 0, 'ZcyAnnouncement2': 0, 'ZcyAnnouncement3': 0, 'ZcyAnnouncement4': 0, 'ZcyAnnouncement5': 0, 'ZcyAnnouncement6': 0, 'ZcyAnnouncement7': 0, 'ZcyAnnouncement10': 0, 'ZcyAnnouncement11': 0, 'ZcyAnnouncement20': 0, 'ZcyAnnouncement21': 0, 'ZcyAnnouncement23': 0, '61-266648': 0} 2026-01-08 23:24:49 - gx_gp_monitor.main - INFO - 筛选出 1300 条新公告 2026-01-08 23:24:49 - gx_gp_monitor.filters.filters - INFO - 来源筛选: 1300 -> 1300 条公告 2026-01-08 23:24:49 - gx_gp_monitor.filters.filters - INFO - 去重筛选: 移除了 1300 条重复公告 2026-01-08 23:24:49 - gx_gp_monitor.filters.filters - INFO - 关键词筛选: 0 -> 0 条公告 2026-01-08 23:24:49 - gx_gp_monitor.filters.filters - INFO - 筛选完成: 总数 1300 -> 筛选后 0 (关键词: 0, 日期: 0, 去重: 1300, 来源: 0) 2026-01-08 23:24:49 - gx_gp_monitor.main - INFO - 筛选后剩余 0 条公告 2026-01-08 23:24:49 - gx_gp_monitor.storage.md_generator - INFO - Markdown文件已保存到: onu.md (共 0 条公告) 2026-01-08 23:24:49 - gx_gp_monitor.main - INFO - 爬取任务完成: {'success': True, 'total_crawled': 1300, 'filtered': 0, 'saved': 0, 'markdown_generated': True, 'notification_sent': False, 'filter_stats': {'keyword_filtered': 1300, 'date_filtered': 0, 'duplicate_filtered': 1300, 'source_filtered': 0}} {address space usage: 249786368 bytes/238MB} {rss usage: 67588096 bytes/64MB} [pid: 1602900|app: 0|req: 2/1] 106.55.202.215 () {36 vars in 679 bytes} [Thu Jan 8 23:24:45 2026] POST /api/v1/wechat/callback?msg_signature=79b6eafce857f4ef43b5e61edc1fe207cda31b3f×tamp=1767885880&nonce=1767448160 => generated 798 bytes in 4081 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 1) 2026-01-08 23:25:11 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-08 23:25:11 - gx_gp_monitor - INFO - 采购公告 爬取完成,共获取 100 条公告,耗时 30.49秒 2026-01-08 23:25:11 - gx_gp_monitor - INFO - 开始爬取 结果公告 2026-01-08 23:25:11 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-08 23:25:11 - gx_gp_monitor - INFO - 结果公告 爬取完成,共获取 100 条公告,耗时 0.26秒 2026-01-08 23:25:11 - gx_gp_monitor - INFO - 开始爬取 合同公告 2026-01-08 23:25:11 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-08 23:25:11 - gx_gp_monitor - INFO - 合同公告 爬取完成,共获取 100 条公告,耗时 0.23秒 2026-01-08 23:25:11 - gx_gp_monitor - INFO - 开始爬取 更正公告 2026-01-08 23:25:11 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-08 23:25:11 - gx_gp_monitor - INFO - 更正公告 爬取完成,共获取 100 条公告,耗时 0.22秒 2026-01-08 23:25:11 - gx_gp_monitor - INFO - 开始爬取 招标文件预公示 2026-01-08 23:25:12 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-08 23:25:12 - gx_gp_monitor - INFO - 招标文件预公示 爬取完成,共获取 100 条公告,耗时 0.27秒 2026-01-08 23:25:12 - gx_gp_monitor - INFO - 开始爬取 单一来源公示 2026-01-08 23:25:12 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-08 23:25:12 - gx_gp_monitor - INFO - 单一来源公示 爬取完成,共获取 100 条公告,耗时 0.24秒 2026-01-08 23:25:12 - gx_gp_monitor - INFO - 开始爬取 电子卖场公示 2026-01-08 23:25:12 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-08 23:25:12 - gx_gp_monitor - INFO - 电子卖场公示 爬取完成,共获取 100 条公告,耗时 0.36秒 2026-01-08 23:25:12 - gx_gp_monitor - INFO - 开始爬取 履约验收公示 2026-01-08 23:25:13 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-08 23:25:13 - gx_gp_monitor - INFO - 履约验收公示 爬取完成,共获取 100 条公告,耗时 0.22秒 2026-01-08 23:25:13 - gx_gp_monitor - INFO - 开始爬取 工程类公告 2026-01-08 23:25:13 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-08 23:25:13 - gx_gp_monitor - INFO - 工程类公告 爬取完成,共获取 100 条公告,耗时 0.21秒 2026-01-08 23:25:13 - gx_gp_monitor - INFO - 开始爬取 框架协议征集公告 2026-01-08 23:25:13 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-08 23:25:13 - gx_gp_monitor - INFO - 框架协议征集公告 爬取完成,共获取 100 条公告,耗时 0.17秒 2026-01-08 23:25:13 - gx_gp_monitor - INFO - 开始爬取 框架协议入围结果公告 2026-01-08 23:25:13 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-08 23:25:13 - gx_gp_monitor - INFO - 框架协议入围结果公告 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-08 23:25:13 - gx_gp_monitor - INFO - 开始爬取 框架协议成交结果汇总公告 2026-01-08 23:25:13 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-08 23:25:13 - gx_gp_monitor - INFO - 框架协议成交结果汇总公告 爬取完成,共获取 100 条公告,耗时 0.15秒 2026-01-08 23:25:13 - gx_gp_monitor - INFO - 开始爬取 采购意向公开 2026-01-08 23:25:13 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-08 23:25:13 - gx_gp_monitor - INFO - 采购意向公开 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-08 23:25:13 - gx_gp_monitor.crawler.spider - INFO - 爬取完成: 共处理 13 个来源,成功 13 个,失败 0 个,获取 1300 条公告 2026-01-08 23:25:13 - gx_gp_monitor.main - INFO - 搜索到 1300 条原始公告 2026-01-08 23:25:13 - gx_gp_monitor.storage.postgresql - INFO - 开始按来源保存 1300 条公告,每个来源最多保留 100 条 2026-01-08 23:25:13 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-08 23:25:13 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement1 保存了 0 条公告 2026-01-08 23:25:13 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-08 23:25:13 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement2 保存了 0 条公告 2026-01-08 23:25:14 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-08 23:25:14 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement3 保存了 0 条公告 2026-01-08 23:25:14 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-08 23:25:14 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement4 保存了 0 条公告 2026-01-08 23:25:14 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-08 23:25:14 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement5 保存了 0 条公告 2026-01-08 23:25:14 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-08 23:25:14 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement6 保存了 0 条公告 2026-01-08 23:25:14 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-08 23:25:14 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement7 保存了 0 条公告 2026-01-08 23:25:14 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-08 23:25:14 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement10 保存了 0 条公告 2026-01-08 23:25:14 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-08 23:25:14 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement11 保存了 0 条公告 2026-01-08 23:25:14 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-08 23:25:14 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement20 保存了 0 条公告 2026-01-08 23:25:14 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-08 23:25:14 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement21 保存了 0 条公告 2026-01-08 23:25:14 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-08 23:25:14 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement23 保存了 0 条公告 2026-01-08 23:25:14 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-08 23:25:14 - gx_gp_monitor.storage.postgresql - INFO - 来源 61-266648 保存了 0 条公告 2026-01-08 23:25:14 - gx_gp_monitor.storage.postgresql - INFO - 按来源保存完成,总计保存 0 条公告 2026-01-08 23:25:14 - gx_gp_monitor.main - INFO - 保存所有公告完成:共保存 0 条,按来源统计: {'ZcyAnnouncement1': 0, 'ZcyAnnouncement2': 0, 'ZcyAnnouncement3': 0, 'ZcyAnnouncement4': 0, 'ZcyAnnouncement5': 0, 'ZcyAnnouncement6': 0, 'ZcyAnnouncement7': 0, 'ZcyAnnouncement10': 0, 'ZcyAnnouncement11': 0, 'ZcyAnnouncement20': 0, 'ZcyAnnouncement21': 0, 'ZcyAnnouncement23': 0, '61-266648': 0} 2026-01-08 23:25:14 - gx_gp_monitor.main - INFO - 筛选出 1300 条新公告 2026-01-08 23:25:14 - gx_gp_monitor.filters.filters - INFO - 来源筛选: 1300 -> 1300 条公告 2026-01-08 23:25:14 - gx_gp_monitor.filters.filters - INFO - 去重筛选: 移除了 1300 条重复公告 2026-01-08 23:25:14 - gx_gp_monitor.filters.filters - INFO - 关键词筛选: 0 -> 0 条公告 2026-01-08 23:25:14 - gx_gp_monitor.filters.filters - INFO - 筛选完成: 总数 1300 -> 筛选后 0 (关键词: 0, 日期: 0, 去重: 1300, 来源: 0) 2026-01-08 23:25:14 - gx_gp_monitor.main - INFO - 筛选后剩余 0 条公告 2026-01-08 23:25:14 - gx_gp_monitor.storage.md_generator - INFO - Markdown文件已保存到: onu.md (共 0 条公告) 2026-01-08 23:25:14 - gx_gp_monitor.main - INFO - 爬取任务完成: {'success': True, 'total_crawled': 1300, 'filtered': 0, 'saved': 0, 'markdown_generated': True, 'notification_sent': False, 'filter_stats': {'keyword_filtered': 1300, 'date_filtered': 0, 'duplicate_filtered': 1300, 'source_filtered': 0}} {address space usage: 244609024 bytes/233MB} {rss usage: 62353408 bytes/59MB} [pid: 1602900|app: 0|req: 2/2] 183.47.98.168 () {36 vars in 678 bytes} [Thu Jan 8 23:24:40 2026] POST /api/v1/wechat/callback?msg_signature=79b6eafce857f4ef43b5e61edc1fe207cda31b3f×tamp=1767885880&nonce=1767448160 => generated 798 bytes in 33820 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 0) 2026-01-08 23:26:07 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-08 23:26:07 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: WrH7Jb1CJaRbTgRYnX0MmwszM4U7Ik/1SAqCWS1iq2QU8KyMML... 2026-01-08 23:26:07 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 1bee1bed89a994b34b8572f926d6e545f045604e 2026-01-08 23:26:07 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 1bee1bed89a994b34b8572f926d6e545f045604e 2026-01-08 23:26:07 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-08 23:26:07 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-08 23:26:07 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=event 2026-01-08 23:26:07 - gx_gp_monitor.wechat.callback_server - INFO - 处理事件消息: event=click, event_key=keyword_manage, user=WeiJueSen 2026-01-08 23:26:07 - gx_gp_monitor.wechat.message_handler - INFO - 处理事件: click, key: keyword_manage, user: WeiJueSen 2026-01-08 23:26:07 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 请求关键词管理 {address space usage: 234106880 bytes/223MB} {rss usage: 39456768 bytes/37MB} [pid: 1602899|app: 0|req: 1/3] 183.47.117.101 () {36 vars in 679 bytes} [Thu Jan 8 23:26:07 2026] POST /api/v1/wechat/callback?msg_signature=1bee1bed89a994b34b8572f926d6e545f045604e×tamp=1767885967&nonce=1767297702 => generated 1522 bytes in 6 msecs (HTTP/1.1 200) 2 headers in 81 bytes (1 switches on core 0) Thu Jan 8 23:26:49 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/menu_manager.py has been modified Thu Jan 8 23:26:49 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/menu_manager.py has been modified Thu Jan 8 23:26:49 2026 - gateway "uWSGI http 1" has been buried (pid: 1602903) Thu Jan 8 23:26:49 2026 - ...gracefully killing workers... Thu Jan 8 23:26:49 2026 - Gracefully killing worker 2 (pid: 1602900)... Thu Jan 8 23:26:49 2026 - Gracefully killing worker 1 (pid: 1602899)... Thu Jan 8 23:26:50 2026 - worker 1 buried after 1 seconds Thu Jan 8 23:26:50 2026 - worker 2 buried after 1 seconds Thu Jan 8 23:26:50 2026 - binary reloading uWSGI... Thu Jan 8 23:26:50 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:26:50 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Thu Jan 8 23:26:50 2026 - found fd 3 mapped to socket 0 (127.0.0.1:42415) Thu Jan 8 23:26:50 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Thu Jan 8 23:26:50 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Thu Jan 8 23:26:50 2026] *** Thu Jan 8 23:26:50 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Thu Jan 8 23:26:50 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Thu Jan 8 23:26:50 2026 - nodename: ubserver Thu Jan 8 23:26:50 2026 - machine: x86_64 Thu Jan 8 23:26:50 2026 - clock source: unix Thu Jan 8 23:26:50 2026 - pcre jit disabled Thu Jan 8 23:26:50 2026 - detected number of CPU cores: 12 Thu Jan 8 23:26:50 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:26:50 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Thu Jan 8 23:26:50 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:26:50 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:26:50 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:26:50 2026 - your processes number limit is 61306 Thu Jan 8 23:26:50 2026 - your memory page size is 4096 bytes Thu Jan 8 23:26:50 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Thu Jan 8 23:26:50 2026 - detected max file descriptor number: 1024 Thu Jan 8 23:26:50 2026 - lock engine: pthread robust mutexes Thu Jan 8 23:26:50 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Thu Jan 8 23:26:50 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Thu Jan 8 23:26:50 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:37889 (port auto-assigned) fd 4 Thu Jan 8 23:26:50 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:26:50 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:26:50 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Thu Jan 8 23:26:50 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:26:50 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:26:50 2026 - Python main interpreter initialized at 0x75999d552d10 Thu Jan 8 23:26:50 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:26:50 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:26:50 2026 - python threads support enabled Thu Jan 8 23:26:50 2026 - your server socket listen backlog is limited to 100 connections Thu Jan 8 23:26:50 2026 - your mercy for graceful operations on workers is 60 seconds Thu Jan 8 23:26:50 2026 - mapped 250032 bytes (244 KB) for 4 cores Thu Jan 8 23:26:50 2026 - *** Operational MODE: preforking+threaded *** 2026-01-08 23:26:50 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-08 23:26:50 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Thu Jan 8 23:26:50 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x75999d552d10 pid: 1602880 (default app) Thu Jan 8 23:26:50 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:26:50 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:26:50 2026 - *** uWSGI is running in multiple interpreter mode *** Thu Jan 8 23:26:50 2026 - gracefully (RE)spawned uWSGI master process (pid: 1602880) Thu Jan 8 23:26:50 2026 - spawned uWSGI worker 1 (pid: 1604595, cores: 2) Thu Jan 8 23:26:50 2026 - spawned uWSGI worker 2 (pid: 1604596, cores: 2) Thu Jan 8 23:26:50 2026 - spawned uWSGI http 1 (pid: 1604600) Thu Jan 8 23:26:50 2026 - Python auto-reloader enabled 2026-01-08 23:27:36 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-08 23:27:36 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: yWYKLWjpp1gWQZ4OUse8zPR3YaOQZ9wYUHaz8WIETXh3J9S9F/... 2026-01-08 23:27:36 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: bb97c3ed9044e8f2966690372c8e2283c9597d82 2026-01-08 23:27:36 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: bb97c3ed9044e8f2966690372c8e2283c9597d82 2026-01-08 23:27:36 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-08 23:27:36 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-08 23:27:36 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=event 2026-01-08 23:27:36 - gx_gp_monitor.wechat.callback_server - INFO - 处理事件消息: event=click, event_key=about_system, user=WeiJueSen 2026-01-08 23:27:36 - gx_gp_monitor.wechat.message_handler - INFO - 处理事件: click, key: about_system, user: WeiJueSen 2026-01-08 23:27:36 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 请求系统信息 {address space usage: 234065920 bytes/223MB} {rss usage: 39223296 bytes/37MB} [pid: 1604596|app: 0|req: 1/1] 14.116.241.251 () {36 vars in 679 bytes} [Thu Jan 8 23:27:36 2026] POST /api/v1/wechat/callback?msg_signature=bb97c3ed9044e8f2966690372c8e2283c9597d82×tamp=1767886056&nonce=1767320388 => generated 2718 bytes in 10 msecs (HTTP/1.1 200) 2 headers in 81 bytes (1 switches on core 0) Thu Jan 8 23:29:38 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Thu Jan 8 23:29:38 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Thu Jan 8 23:29:38 2026 - gateway "uWSGI http 1" has been buried (pid: 1604600) Thu Jan 8 23:29:38 2026 - ...gracefully killing workers... Thu Jan 8 23:29:38 2026 - Gracefully killing worker 1 (pid: 1604595)... Thu Jan 8 23:29:38 2026 - Gracefully killing worker 2 (pid: 1604596)... Thu Jan 8 23:29:39 2026 - worker 1 buried after 1 seconds Thu Jan 8 23:29:39 2026 - worker 2 buried after 1 seconds Thu Jan 8 23:29:39 2026 - binary reloading uWSGI... Thu Jan 8 23:29:39 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:29:39 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Thu Jan 8 23:29:39 2026 - found fd 4 mapped to socket 0 (127.0.0.1:37889) Thu Jan 8 23:29:39 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Thu Jan 8 23:29:39 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Thu Jan 8 23:29:39 2026] *** Thu Jan 8 23:29:39 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Thu Jan 8 23:29:39 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Thu Jan 8 23:29:39 2026 - nodename: ubserver Thu Jan 8 23:29:39 2026 - machine: x86_64 Thu Jan 8 23:29:39 2026 - clock source: unix Thu Jan 8 23:29:39 2026 - pcre jit disabled Thu Jan 8 23:29:39 2026 - detected number of CPU cores: 12 Thu Jan 8 23:29:39 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:29:39 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Thu Jan 8 23:29:39 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:29:39 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:29:39 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:29:39 2026 - your processes number limit is 61306 Thu Jan 8 23:29:39 2026 - your memory page size is 4096 bytes Thu Jan 8 23:29:39 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Thu Jan 8 23:29:39 2026 - detected max file descriptor number: 1024 Thu Jan 8 23:29:39 2026 - lock engine: pthread robust mutexes Thu Jan 8 23:29:39 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Thu Jan 8 23:29:39 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Thu Jan 8 23:29:39 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:39959 (port auto-assigned) fd 3 Thu Jan 8 23:29:39 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:29:39 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:29:39 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Thu Jan 8 23:29:39 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:29:39 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:29:39 2026 - Python main interpreter initialized at 0x776a98952d10 Thu Jan 8 23:29:39 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:29:39 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:29:39 2026 - python threads support enabled Thu Jan 8 23:29:39 2026 - your server socket listen backlog is limited to 100 connections Thu Jan 8 23:29:39 2026 - your mercy for graceful operations on workers is 60 seconds Thu Jan 8 23:29:39 2026 - mapped 250032 bytes (244 KB) for 4 cores Thu Jan 8 23:29:39 2026 - *** Operational MODE: preforking+threaded *** 2026-01-08 23:29:39 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-08 23:29:39 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Thu Jan 8 23:29:39 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x776a98952d10 pid: 1602880 (default app) Thu Jan 8 23:29:39 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:29:39 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:29:39 2026 - *** uWSGI is running in multiple interpreter mode *** Thu Jan 8 23:29:39 2026 - gracefully (RE)spawned uWSGI master process (pid: 1602880) Thu Jan 8 23:29:39 2026 - spawned uWSGI worker 1 (pid: 1605499, cores: 2) Thu Jan 8 23:29:39 2026 - spawned uWSGI worker 2 (pid: 1605500, cores: 2) Thu Jan 8 23:29:39 2026 - spawned uWSGI http 1 (pid: 1605504) Thu Jan 8 23:29:39 2026 - Python auto-reloader enabled Thu Jan 8 23:29:44 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/menu_manager.py has been modified Thu Jan 8 23:29:44 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/menu_manager.py has been modified Thu Jan 8 23:29:44 2026 - gateway "uWSGI http 1" has been buried (pid: 1605504) Thu Jan 8 23:29:44 2026 - ...gracefully killing workers... Thu Jan 8 23:29:44 2026 - Gracefully killing worker 2 (pid: 1605500)... Thu Jan 8 23:29:44 2026 - Gracefully killing worker 1 (pid: 1605499)... Thu Jan 8 23:29:45 2026 - worker 1 buried after 1 seconds Thu Jan 8 23:29:45 2026 - worker 2 buried after 1 seconds Thu Jan 8 23:29:45 2026 - binary reloading uWSGI... Thu Jan 8 23:29:45 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:29:45 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Thu Jan 8 23:29:45 2026 - found fd 3 mapped to socket 0 (127.0.0.1:39959) Thu Jan 8 23:29:45 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Thu Jan 8 23:29:45 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Thu Jan 8 23:29:45 2026] *** Thu Jan 8 23:29:45 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Thu Jan 8 23:29:45 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Thu Jan 8 23:29:45 2026 - nodename: ubserver Thu Jan 8 23:29:45 2026 - machine: x86_64 Thu Jan 8 23:29:45 2026 - clock source: unix Thu Jan 8 23:29:45 2026 - pcre jit disabled Thu Jan 8 23:29:45 2026 - detected number of CPU cores: 12 Thu Jan 8 23:29:45 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:29:45 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Thu Jan 8 23:29:45 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:29:45 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:29:45 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:29:45 2026 - your processes number limit is 61306 Thu Jan 8 23:29:45 2026 - your memory page size is 4096 bytes Thu Jan 8 23:29:45 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Thu Jan 8 23:29:45 2026 - detected max file descriptor number: 1024 Thu Jan 8 23:29:45 2026 - lock engine: pthread robust mutexes Thu Jan 8 23:29:45 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Thu Jan 8 23:29:45 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Thu Jan 8 23:29:45 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:44777 (port auto-assigned) fd 4 Thu Jan 8 23:29:45 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:29:45 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:29:45 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Thu Jan 8 23:29:45 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:29:45 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:29:45 2026 - Python main interpreter initialized at 0x7c1a39352d10 Thu Jan 8 23:29:45 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:29:45 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:29:45 2026 - python threads support enabled Thu Jan 8 23:29:45 2026 - your server socket listen backlog is limited to 100 connections Thu Jan 8 23:29:45 2026 - your mercy for graceful operations on workers is 60 seconds Thu Jan 8 23:29:45 2026 - mapped 250032 bytes (244 KB) for 4 cores Thu Jan 8 23:29:45 2026 - *** Operational MODE: preforking+threaded *** 2026-01-08 23:29:46 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-08 23:29:46 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Thu Jan 8 23:29:46 2026 - WSGI app 0 (mountpoint='') ready in 1 seconds on interpreter 0x7c1a39352d10 pid: 1602880 (default app) Thu Jan 8 23:29:46 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:29:46 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:29:46 2026 - *** uWSGI is running in multiple interpreter mode *** Thu Jan 8 23:29:46 2026 - gracefully (RE)spawned uWSGI master process (pid: 1602880) Thu Jan 8 23:29:46 2026 - spawned uWSGI worker 1 (pid: 1605532, cores: 2) Thu Jan 8 23:29:46 2026 - spawned uWSGI worker 2 (pid: 1605534, cores: 2) Thu Jan 8 23:29:46 2026 - Python auto-reloader enabled Thu Jan 8 23:29:46 2026 - spawned uWSGI http 1 (pid: 1605536) Thu Jan 8 23:29:58 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Thu Jan 8 23:29:58 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Thu Jan 8 23:29:58 2026 - gateway "uWSGI http 1" has been buried (pid: 1605536) Thu Jan 8 23:29:58 2026 - ...gracefully killing workers... Thu Jan 8 23:29:58 2026 - Gracefully killing worker 1 (pid: 1605532)... Thu Jan 8 23:29:58 2026 - Gracefully killing worker 2 (pid: 1605534)... Thu Jan 8 23:29:59 2026 - worker 1 buried after 1 seconds Thu Jan 8 23:29:59 2026 - worker 2 buried after 1 seconds Thu Jan 8 23:29:59 2026 - binary reloading uWSGI... Thu Jan 8 23:29:59 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:29:59 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Thu Jan 8 23:29:59 2026 - found fd 4 mapped to socket 0 (127.0.0.1:44777) Thu Jan 8 23:29:59 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Thu Jan 8 23:29:59 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Thu Jan 8 23:29:59 2026] *** Thu Jan 8 23:29:59 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Thu Jan 8 23:29:59 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Thu Jan 8 23:29:59 2026 - nodename: ubserver Thu Jan 8 23:29:59 2026 - machine: x86_64 Thu Jan 8 23:29:59 2026 - clock source: unix Thu Jan 8 23:29:59 2026 - pcre jit disabled Thu Jan 8 23:29:59 2026 - detected number of CPU cores: 12 Thu Jan 8 23:29:59 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:29:59 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Thu Jan 8 23:29:59 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:29:59 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:29:59 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:29:59 2026 - your processes number limit is 61306 Thu Jan 8 23:29:59 2026 - your memory page size is 4096 bytes Thu Jan 8 23:29:59 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Thu Jan 8 23:29:59 2026 - detected max file descriptor number: 1024 Thu Jan 8 23:29:59 2026 - lock engine: pthread robust mutexes Thu Jan 8 23:29:59 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Thu Jan 8 23:29:59 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Thu Jan 8 23:29:59 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:39661 (port auto-assigned) fd 3 Thu Jan 8 23:29:59 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:29:59 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:29:59 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Thu Jan 8 23:29:59 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:29:59 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:29:59 2026 - Python main interpreter initialized at 0x7253cdf52d10 Thu Jan 8 23:29:59 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:29:59 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:29:59 2026 - python threads support enabled Thu Jan 8 23:29:59 2026 - your server socket listen backlog is limited to 100 connections Thu Jan 8 23:29:59 2026 - your mercy for graceful operations on workers is 60 seconds Thu Jan 8 23:29:59 2026 - mapped 250032 bytes (244 KB) for 4 cores Thu Jan 8 23:29:59 2026 - *** Operational MODE: preforking+threaded *** 2026-01-08 23:29:59 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-08 23:29:59 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Thu Jan 8 23:29:59 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x7253cdf52d10 pid: 1602880 (default app) Thu Jan 8 23:29:59 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:29:59 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:29:59 2026 - *** uWSGI is running in multiple interpreter mode *** Thu Jan 8 23:29:59 2026 - gracefully (RE)spawned uWSGI master process (pid: 1602880) Thu Jan 8 23:29:59 2026 - spawned uWSGI worker 1 (pid: 1605566, cores: 2) Thu Jan 8 23:29:59 2026 - spawned uWSGI worker 2 (pid: 1605567, cores: 2) Thu Jan 8 23:29:59 2026 - spawned uWSGI http 1 (pid: 1605570) Thu Jan 8 23:29:59 2026 - Python auto-reloader enabled Thu Jan 8 23:30:11 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Thu Jan 8 23:30:11 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Thu Jan 8 23:30:11 2026 - gateway "uWSGI http 1" has been buried (pid: 1605570) Thu Jan 8 23:30:11 2026 - ...gracefully killing workers... Thu Jan 8 23:30:11 2026 - Gracefully killing worker 1 (pid: 1605566)... Thu Jan 8 23:30:11 2026 - Gracefully killing worker 2 (pid: 1605567)... Thu Jan 8 23:30:12 2026 - worker 1 buried after 1 seconds Thu Jan 8 23:30:12 2026 - worker 2 buried after 1 seconds Thu Jan 8 23:30:12 2026 - binary reloading uWSGI... Thu Jan 8 23:30:12 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:30:12 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Thu Jan 8 23:30:12 2026 - found fd 3 mapped to socket 0 (127.0.0.1:39661) Thu Jan 8 23:30:12 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Thu Jan 8 23:30:12 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Thu Jan 8 23:30:12 2026] *** Thu Jan 8 23:30:12 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Thu Jan 8 23:30:12 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Thu Jan 8 23:30:12 2026 - nodename: ubserver Thu Jan 8 23:30:12 2026 - machine: x86_64 Thu Jan 8 23:30:12 2026 - clock source: unix Thu Jan 8 23:30:12 2026 - pcre jit disabled Thu Jan 8 23:30:12 2026 - detected number of CPU cores: 12 Thu Jan 8 23:30:12 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:30:12 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Thu Jan 8 23:30:12 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:30:12 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:30:12 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:30:12 2026 - your processes number limit is 61306 Thu Jan 8 23:30:12 2026 - your memory page size is 4096 bytes Thu Jan 8 23:30:12 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Thu Jan 8 23:30:12 2026 - detected max file descriptor number: 1024 Thu Jan 8 23:30:12 2026 - lock engine: pthread robust mutexes Thu Jan 8 23:30:12 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Thu Jan 8 23:30:12 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Thu Jan 8 23:30:12 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:45953 (port auto-assigned) fd 4 Thu Jan 8 23:30:12 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:30:12 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:30:12 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Thu Jan 8 23:30:12 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:30:12 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:30:12 2026 - Python main interpreter initialized at 0x7a48fed52d10 Thu Jan 8 23:30:12 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:30:12 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:30:12 2026 - python threads support enabled Thu Jan 8 23:30:12 2026 - your server socket listen backlog is limited to 100 connections Thu Jan 8 23:30:12 2026 - your mercy for graceful operations on workers is 60 seconds Thu Jan 8 23:30:12 2026 - mapped 250032 bytes (244 KB) for 4 cores Thu Jan 8 23:30:12 2026 - *** Operational MODE: preforking+threaded *** 2026-01-08 23:30:12 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-08 23:30:12 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Thu Jan 8 23:30:12 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x7a48fed52d10 pid: 1602880 (default app) Thu Jan 8 23:30:12 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:30:12 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:30:12 2026 - *** uWSGI is running in multiple interpreter mode *** Thu Jan 8 23:30:12 2026 - gracefully (RE)spawned uWSGI master process (pid: 1602880) Thu Jan 8 23:30:12 2026 - spawned uWSGI worker 1 (pid: 1605779, cores: 2) Thu Jan 8 23:30:12 2026 - spawned uWSGI worker 2 (pid: 1605780, cores: 2) Thu Jan 8 23:30:12 2026 - spawned uWSGI http 1 (pid: 1605783) Thu Jan 8 23:30:12 2026 - Python auto-reloader enabled Thu Jan 8 23:30:52 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Thu Jan 8 23:30:52 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Thu Jan 8 23:30:52 2026 - gateway "uWSGI http 1" has been buried (pid: 1605783) Thu Jan 8 23:30:52 2026 - ...gracefully killing workers... Thu Jan 8 23:30:52 2026 - Gracefully killing worker 1 (pid: 1605779)... Thu Jan 8 23:30:52 2026 - Gracefully killing worker 2 (pid: 1605780)... Thu Jan 8 23:30:53 2026 - worker 1 buried after 1 seconds Thu Jan 8 23:30:53 2026 - worker 2 buried after 1 seconds Thu Jan 8 23:30:53 2026 - binary reloading uWSGI... Thu Jan 8 23:30:53 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:30:53 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Thu Jan 8 23:30:53 2026 - found fd 4 mapped to socket 0 (127.0.0.1:45953) Thu Jan 8 23:30:53 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Thu Jan 8 23:30:53 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Thu Jan 8 23:30:53 2026] *** Thu Jan 8 23:30:53 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Thu Jan 8 23:30:53 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Thu Jan 8 23:30:53 2026 - nodename: ubserver Thu Jan 8 23:30:53 2026 - machine: x86_64 Thu Jan 8 23:30:53 2026 - clock source: unix Thu Jan 8 23:30:53 2026 - pcre jit disabled Thu Jan 8 23:30:53 2026 - detected number of CPU cores: 12 Thu Jan 8 23:30:53 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:30:53 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Thu Jan 8 23:30:53 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:30:53 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:30:53 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:30:53 2026 - your processes number limit is 61306 Thu Jan 8 23:30:53 2026 - your memory page size is 4096 bytes Thu Jan 8 23:30:53 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Thu Jan 8 23:30:53 2026 - detected max file descriptor number: 1024 Thu Jan 8 23:30:53 2026 - lock engine: pthread robust mutexes Thu Jan 8 23:30:53 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Thu Jan 8 23:30:53 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Thu Jan 8 23:30:53 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:46579 (port auto-assigned) fd 3 Thu Jan 8 23:30:53 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:30:53 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:30:53 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Thu Jan 8 23:30:53 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:30:53 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:30:53 2026 - Python main interpreter initialized at 0x78e340352d10 Thu Jan 8 23:30:53 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:30:53 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:30:53 2026 - python threads support enabled Thu Jan 8 23:30:53 2026 - your server socket listen backlog is limited to 100 connections Thu Jan 8 23:30:53 2026 - your mercy for graceful operations on workers is 60 seconds Thu Jan 8 23:30:53 2026 - mapped 250032 bytes (244 KB) for 4 cores Thu Jan 8 23:30:53 2026 - *** Operational MODE: preforking+threaded *** 2026-01-08 23:30:53 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-08 23:30:53 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Thu Jan 8 23:30:53 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x78e340352d10 pid: 1602880 (default app) Thu Jan 8 23:30:53 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:30:53 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:30:53 2026 - *** uWSGI is running in multiple interpreter mode *** Thu Jan 8 23:30:53 2026 - gracefully (RE)spawned uWSGI master process (pid: 1602880) Thu Jan 8 23:30:53 2026 - spawned uWSGI worker 1 (pid: 1606003, cores: 2) Thu Jan 8 23:30:53 2026 - spawned uWSGI worker 2 (pid: 1606006, cores: 2) Thu Jan 8 23:30:53 2026 - Python auto-reloader enabled Thu Jan 8 23:30:53 2026 - spawned uWSGI http 1 (pid: 1606009) Thu Jan 8 23:31:22 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Thu Jan 8 23:31:22 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Thu Jan 8 23:31:22 2026 - gateway "uWSGI http 1" has been buried (pid: 1606009) Thu Jan 8 23:31:22 2026 - ...gracefully killing workers... Thu Jan 8 23:31:22 2026 - Gracefully killing worker 2 (pid: 1606006)... Thu Jan 8 23:31:22 2026 - Gracefully killing worker 1 (pid: 1606003)... Thu Jan 8 23:31:23 2026 - worker 1 buried after 1 seconds Thu Jan 8 23:31:23 2026 - worker 2 buried after 1 seconds Thu Jan 8 23:31:23 2026 - binary reloading uWSGI... Thu Jan 8 23:31:23 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:31:23 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Thu Jan 8 23:31:23 2026 - found fd 3 mapped to socket 0 (127.0.0.1:46579) Thu Jan 8 23:31:23 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Thu Jan 8 23:31:23 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Thu Jan 8 23:31:23 2026] *** Thu Jan 8 23:31:23 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Thu Jan 8 23:31:23 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Thu Jan 8 23:31:23 2026 - nodename: ubserver Thu Jan 8 23:31:23 2026 - machine: x86_64 Thu Jan 8 23:31:23 2026 - clock source: unix Thu Jan 8 23:31:23 2026 - pcre jit disabled Thu Jan 8 23:31:23 2026 - detected number of CPU cores: 12 Thu Jan 8 23:31:23 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:31:23 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Thu Jan 8 23:31:23 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:31:23 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:31:23 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:31:23 2026 - your processes number limit is 61306 Thu Jan 8 23:31:23 2026 - your memory page size is 4096 bytes Thu Jan 8 23:31:23 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Thu Jan 8 23:31:23 2026 - detected max file descriptor number: 1024 Thu Jan 8 23:31:23 2026 - lock engine: pthread robust mutexes Thu Jan 8 23:31:23 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Thu Jan 8 23:31:23 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Thu Jan 8 23:31:23 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:42193 (port auto-assigned) fd 4 Thu Jan 8 23:31:23 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:31:23 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:31:23 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Thu Jan 8 23:31:23 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:31:23 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:31:23 2026 - Python main interpreter initialized at 0x7f7b1e552d10 Thu Jan 8 23:31:23 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:31:23 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:31:23 2026 - python threads support enabled Thu Jan 8 23:31:23 2026 - your server socket listen backlog is limited to 100 connections Thu Jan 8 23:31:23 2026 - your mercy for graceful operations on workers is 60 seconds Thu Jan 8 23:31:23 2026 - mapped 250032 bytes (244 KB) for 4 cores Thu Jan 8 23:31:23 2026 - *** Operational MODE: preforking+threaded *** 2026-01-08 23:31:23 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-08 23:31:23 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Thu Jan 8 23:31:23 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x7f7b1e552d10 pid: 1602880 (default app) Thu Jan 8 23:31:23 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:31:23 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:31:23 2026 - *** uWSGI is running in multiple interpreter mode *** Thu Jan 8 23:31:23 2026 - gracefully (RE)spawned uWSGI master process (pid: 1602880) Thu Jan 8 23:31:23 2026 - spawned uWSGI worker 1 (pid: 1606093, cores: 2) Thu Jan 8 23:31:23 2026 - spawned uWSGI worker 2 (pid: 1606094, cores: 2) Thu Jan 8 23:31:23 2026 - spawned uWSGI http 1 (pid: 1606098) Thu Jan 8 23:31:23 2026 - Python auto-reloader enabled Thu Jan 8 23:31:39 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Thu Jan 8 23:31:39 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Thu Jan 8 23:31:39 2026 - gateway "uWSGI http 1" has been buried (pid: 1606098) Thu Jan 8 23:31:39 2026 - ...gracefully killing workers... Thu Jan 8 23:31:39 2026 - Gracefully killing worker 1 (pid: 1606093)... Thu Jan 8 23:31:39 2026 - Gracefully killing worker 2 (pid: 1606094)... Thu Jan 8 23:31:40 2026 - worker 1 buried after 1 seconds Thu Jan 8 23:31:40 2026 - worker 2 buried after 1 seconds Thu Jan 8 23:31:40 2026 - binary reloading uWSGI... Thu Jan 8 23:31:40 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:31:40 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Thu Jan 8 23:31:40 2026 - found fd 4 mapped to socket 0 (127.0.0.1:42193) Thu Jan 8 23:31:40 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Thu Jan 8 23:31:40 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Thu Jan 8 23:31:40 2026] *** Thu Jan 8 23:31:40 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Thu Jan 8 23:31:40 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Thu Jan 8 23:31:40 2026 - nodename: ubserver Thu Jan 8 23:31:40 2026 - machine: x86_64 Thu Jan 8 23:31:40 2026 - clock source: unix Thu Jan 8 23:31:40 2026 - pcre jit disabled Thu Jan 8 23:31:40 2026 - detected number of CPU cores: 12 Thu Jan 8 23:31:40 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:31:40 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Thu Jan 8 23:31:40 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:31:40 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:31:40 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:31:40 2026 - your processes number limit is 61306 Thu Jan 8 23:31:40 2026 - your memory page size is 4096 bytes Thu Jan 8 23:31:40 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Thu Jan 8 23:31:40 2026 - detected max file descriptor number: 1024 Thu Jan 8 23:31:40 2026 - lock engine: pthread robust mutexes Thu Jan 8 23:31:40 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Thu Jan 8 23:31:40 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Thu Jan 8 23:31:40 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:35373 (port auto-assigned) fd 3 Thu Jan 8 23:31:40 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:31:40 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:31:40 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Thu Jan 8 23:31:40 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:31:40 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:31:40 2026 - Python main interpreter initialized at 0x7b819db52d10 Thu Jan 8 23:31:40 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:31:40 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:31:40 2026 - python threads support enabled Thu Jan 8 23:31:40 2026 - your server socket listen backlog is limited to 100 connections Thu Jan 8 23:31:40 2026 - your mercy for graceful operations on workers is 60 seconds Thu Jan 8 23:31:40 2026 - mapped 250032 bytes (244 KB) for 4 cores Thu Jan 8 23:31:40 2026 - *** Operational MODE: preforking+threaded *** 2026-01-08 23:31:40 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-08 23:31:40 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Thu Jan 8 23:31:40 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x7b819db52d10 pid: 1602880 (default app) Thu Jan 8 23:31:40 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:31:40 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:31:40 2026 - *** uWSGI is running in multiple interpreter mode *** Thu Jan 8 23:31:40 2026 - gracefully (RE)spawned uWSGI master process (pid: 1602880) Thu Jan 8 23:31:40 2026 - spawned uWSGI worker 1 (pid: 1606224, cores: 2) Thu Jan 8 23:31:40 2026 - spawned uWSGI worker 2 (pid: 1606227, cores: 2) Thu Jan 8 23:31:40 2026 - Python auto-reloader enabled Thu Jan 8 23:31:40 2026 - spawned uWSGI http 1 (pid: 1606228) Thu Jan 8 23:31:55 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Thu Jan 8 23:31:55 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Thu Jan 8 23:31:55 2026 - gateway "uWSGI http 1" has been buried (pid: 1606228) Thu Jan 8 23:31:55 2026 - ...gracefully killing workers... Thu Jan 8 23:31:55 2026 - Gracefully killing worker 2 (pid: 1606227)... Thu Jan 8 23:31:55 2026 - Gracefully killing worker 1 (pid: 1606224)... Thu Jan 8 23:31:56 2026 - worker 1 buried after 1 seconds Thu Jan 8 23:31:56 2026 - worker 2 buried after 1 seconds Thu Jan 8 23:31:56 2026 - binary reloading uWSGI... Thu Jan 8 23:31:56 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:31:56 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Thu Jan 8 23:31:56 2026 - found fd 3 mapped to socket 0 (127.0.0.1:35373) Thu Jan 8 23:31:56 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Thu Jan 8 23:31:56 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Thu Jan 8 23:31:56 2026] *** Thu Jan 8 23:31:56 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Thu Jan 8 23:31:56 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Thu Jan 8 23:31:56 2026 - nodename: ubserver Thu Jan 8 23:31:56 2026 - machine: x86_64 Thu Jan 8 23:31:56 2026 - clock source: unix Thu Jan 8 23:31:56 2026 - pcre jit disabled Thu Jan 8 23:31:56 2026 - detected number of CPU cores: 12 Thu Jan 8 23:31:56 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:31:56 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Thu Jan 8 23:31:56 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:31:56 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:31:56 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:31:56 2026 - your processes number limit is 61306 Thu Jan 8 23:31:56 2026 - your memory page size is 4096 bytes Thu Jan 8 23:31:56 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Thu Jan 8 23:31:56 2026 - detected max file descriptor number: 1024 Thu Jan 8 23:31:56 2026 - lock engine: pthread robust mutexes Thu Jan 8 23:31:56 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Thu Jan 8 23:31:56 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Thu Jan 8 23:31:56 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:43279 (port auto-assigned) fd 4 Thu Jan 8 23:31:56 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:31:56 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:31:56 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Thu Jan 8 23:31:56 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:31:56 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:31:57 2026 - Python main interpreter initialized at 0x7b48c3b52d10 Thu Jan 8 23:31:57 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:31:57 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:31:57 2026 - python threads support enabled Thu Jan 8 23:31:57 2026 - your server socket listen backlog is limited to 100 connections Thu Jan 8 23:31:57 2026 - your mercy for graceful operations on workers is 60 seconds Thu Jan 8 23:31:57 2026 - mapped 250032 bytes (244 KB) for 4 cores Thu Jan 8 23:31:57 2026 - *** Operational MODE: preforking+threaded *** 2026-01-08 23:31:57 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-08 23:31:57 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Thu Jan 8 23:31:57 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x7b48c3b52d10 pid: 1602880 (default app) Thu Jan 8 23:31:57 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:31:57 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:31:57 2026 - *** uWSGI is running in multiple interpreter mode *** Thu Jan 8 23:31:57 2026 - gracefully (RE)spawned uWSGI master process (pid: 1602880) Thu Jan 8 23:31:57 2026 - spawned uWSGI worker 1 (pid: 1606265, cores: 2) Thu Jan 8 23:31:57 2026 - spawned uWSGI worker 2 (pid: 1606266, cores: 2) Thu Jan 8 23:31:57 2026 - spawned uWSGI http 1 (pid: 1606269) Thu Jan 8 23:31:57 2026 - Python auto-reloader enabled Thu Jan 8 23:32:17 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Thu Jan 8 23:32:17 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Thu Jan 8 23:32:17 2026 - gateway "uWSGI http 1" has been buried (pid: 1606269) Thu Jan 8 23:32:17 2026 - ...gracefully killing workers... Thu Jan 8 23:32:17 2026 - Gracefully killing worker 2 (pid: 1606266)... Thu Jan 8 23:32:17 2026 - Gracefully killing worker 1 (pid: 1606265)... Thu Jan 8 23:32:18 2026 - worker 1 buried after 1 seconds Thu Jan 8 23:32:18 2026 - worker 2 buried after 1 seconds Thu Jan 8 23:32:18 2026 - binary reloading uWSGI... Thu Jan 8 23:32:18 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:32:18 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Thu Jan 8 23:32:18 2026 - found fd 4 mapped to socket 0 (127.0.0.1:43279) Thu Jan 8 23:32:18 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Thu Jan 8 23:32:18 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Thu Jan 8 23:32:18 2026] *** Thu Jan 8 23:32:18 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Thu Jan 8 23:32:18 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Thu Jan 8 23:32:18 2026 - nodename: ubserver Thu Jan 8 23:32:18 2026 - machine: x86_64 Thu Jan 8 23:32:18 2026 - clock source: unix Thu Jan 8 23:32:18 2026 - pcre jit disabled Thu Jan 8 23:32:18 2026 - detected number of CPU cores: 12 Thu Jan 8 23:32:18 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:32:18 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Thu Jan 8 23:32:18 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:32:18 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:32:18 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:32:18 2026 - your processes number limit is 61306 Thu Jan 8 23:32:18 2026 - your memory page size is 4096 bytes Thu Jan 8 23:32:18 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Thu Jan 8 23:32:18 2026 - detected max file descriptor number: 1024 Thu Jan 8 23:32:18 2026 - lock engine: pthread robust mutexes Thu Jan 8 23:32:18 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Thu Jan 8 23:32:18 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Thu Jan 8 23:32:18 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:45679 (port auto-assigned) fd 3 Thu Jan 8 23:32:18 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:32:18 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:32:18 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Thu Jan 8 23:32:18 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:32:18 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:32:18 2026 - Python main interpreter initialized at 0x709a17952d10 Thu Jan 8 23:32:18 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:32:18 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:32:18 2026 - python threads support enabled Thu Jan 8 23:32:18 2026 - your server socket listen backlog is limited to 100 connections Thu Jan 8 23:32:18 2026 - your mercy for graceful operations on workers is 60 seconds Thu Jan 8 23:32:18 2026 - mapped 250032 bytes (244 KB) for 4 cores Thu Jan 8 23:32:18 2026 - *** Operational MODE: preforking+threaded *** 应用创建失败: invalid character '🧹' (U+1F9F9) (message_handler.py, line 866) Thu Jan 8 23:32:18 2026 - VACUUM: pidfile removed. Thu Jan 8 23:32:20 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Thu Jan 8 23:32:20 2026] *** Thu Jan 8 23:32:20 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Thu Jan 8 23:32:20 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Thu Jan 8 23:32:20 2026 - nodename: ubserver Thu Jan 8 23:32:20 2026 - machine: x86_64 Thu Jan 8 23:32:20 2026 - clock source: unix Thu Jan 8 23:32:20 2026 - pcre jit disabled Thu Jan 8 23:32:20 2026 - detected number of CPU cores: 12 Thu Jan 8 23:32:20 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:32:20 2026 - writing pidfile to ./uwsgi-wechat.pid Thu Jan 8 23:32:20 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Thu Jan 8 23:32:20 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:32:20 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:32:20 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:32:20 2026 - your processes number limit is 61306 Thu Jan 8 23:32:20 2026 - your memory page size is 4096 bytes Thu Jan 8 23:32:20 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Thu Jan 8 23:32:20 2026 - detected max file descriptor number: 1024 Thu Jan 8 23:32:20 2026 - lock engine: pthread robust mutexes Thu Jan 8 23:32:20 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Thu Jan 8 23:32:20 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 4 Thu Jan 8 23:32:20 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:39829 (port auto-assigned) fd 3 Thu Jan 8 23:32:20 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:32:20 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:32:20 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Thu Jan 8 23:32:20 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:32:20 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:32:20 2026 - Python main interpreter initialized at 0x78d37bf52d10 Thu Jan 8 23:32:20 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:32:20 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:32:20 2026 - python threads support enabled Thu Jan 8 23:32:20 2026 - your server socket listen backlog is limited to 100 connections Thu Jan 8 23:32:20 2026 - your mercy for graceful operations on workers is 60 seconds Thu Jan 8 23:32:20 2026 - mapped 250032 bytes (244 KB) for 4 cores Thu Jan 8 23:32:20 2026 - *** Operational MODE: preforking+threaded *** 应用创建失败: invalid character '🧹' (U+1F9F9) (message_handler.py, line 866) Thu Jan 8 23:32:20 2026 - VACUUM: pidfile removed. Thu Jan 8 23:32:22 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Thu Jan 8 23:32:22 2026] *** Thu Jan 8 23:32:22 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Thu Jan 8 23:32:22 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Thu Jan 8 23:32:22 2026 - nodename: ubserver Thu Jan 8 23:32:22 2026 - machine: x86_64 Thu Jan 8 23:32:22 2026 - clock source: unix Thu Jan 8 23:32:22 2026 - pcre jit disabled Thu Jan 8 23:32:22 2026 - detected number of CPU cores: 12 Thu Jan 8 23:32:22 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:32:22 2026 - writing pidfile to ./uwsgi-wechat.pid Thu Jan 8 23:32:22 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Thu Jan 8 23:32:22 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:32:22 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:32:22 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:32:22 2026 - your processes number limit is 61306 Thu Jan 8 23:32:22 2026 - your memory page size is 4096 bytes Thu Jan 8 23:32:22 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Thu Jan 8 23:32:22 2026 - detected max file descriptor number: 1024 Thu Jan 8 23:32:22 2026 - lock engine: pthread robust mutexes Thu Jan 8 23:32:22 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Thu Jan 8 23:32:22 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 4 Thu Jan 8 23:32:22 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:40245 (port auto-assigned) fd 3 Thu Jan 8 23:32:22 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:32:22 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:32:22 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Thu Jan 8 23:32:22 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:32:22 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:32:22 2026 - Python main interpreter initialized at 0x7eea4cd52d10 Thu Jan 8 23:32:22 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:32:22 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:32:22 2026 - python threads support enabled Thu Jan 8 23:32:22 2026 - your server socket listen backlog is limited to 100 connections Thu Jan 8 23:32:22 2026 - your mercy for graceful operations on workers is 60 seconds Thu Jan 8 23:32:22 2026 - mapped 250032 bytes (244 KB) for 4 cores Thu Jan 8 23:32:22 2026 - *** Operational MODE: preforking+threaded *** 应用创建失败: invalid character '🧹' (U+1F9F9) (message_handler.py, line 866) Thu Jan 8 23:32:22 2026 - VACUUM: pidfile removed. Thu Jan 8 23:32:25 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Thu Jan 8 23:32:25 2026] *** Thu Jan 8 23:32:25 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Thu Jan 8 23:32:25 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Thu Jan 8 23:32:25 2026 - nodename: ubserver Thu Jan 8 23:32:25 2026 - machine: x86_64 Thu Jan 8 23:32:25 2026 - clock source: unix Thu Jan 8 23:32:25 2026 - pcre jit disabled Thu Jan 8 23:32:25 2026 - detected number of CPU cores: 12 Thu Jan 8 23:32:25 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:32:25 2026 - writing pidfile to ./uwsgi-wechat.pid Thu Jan 8 23:32:25 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Thu Jan 8 23:32:25 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:32:25 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:32:25 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:32:25 2026 - your processes number limit is 61306 Thu Jan 8 23:32:25 2026 - your memory page size is 4096 bytes Thu Jan 8 23:32:25 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Thu Jan 8 23:32:25 2026 - detected max file descriptor number: 1024 Thu Jan 8 23:32:25 2026 - lock engine: pthread robust mutexes Thu Jan 8 23:32:25 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Thu Jan 8 23:32:25 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 4 Thu Jan 8 23:32:25 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:43897 (port auto-assigned) fd 3 Thu Jan 8 23:32:25 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:32:25 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:32:25 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Thu Jan 8 23:32:25 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:32:25 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:32:25 2026 - Python main interpreter initialized at 0x77e879f52d10 Thu Jan 8 23:32:25 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:32:25 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:32:25 2026 - python threads support enabled Thu Jan 8 23:32:25 2026 - your server socket listen backlog is limited to 100 connections Thu Jan 8 23:32:25 2026 - your mercy for graceful operations on workers is 60 seconds Thu Jan 8 23:32:25 2026 - mapped 250032 bytes (244 KB) for 4 cores Thu Jan 8 23:32:25 2026 - *** Operational MODE: preforking+threaded *** 应用创建失败: invalid character '🧹' (U+1F9F9) (message_handler.py, line 866) Thu Jan 8 23:32:25 2026 - VACUUM: pidfile removed. Thu Jan 8 23:32:29 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Thu Jan 8 23:32:29 2026] *** Thu Jan 8 23:32:29 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Thu Jan 8 23:32:29 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Thu Jan 8 23:32:29 2026 - nodename: ubserver Thu Jan 8 23:32:29 2026 - machine: x86_64 Thu Jan 8 23:32:29 2026 - clock source: unix Thu Jan 8 23:32:29 2026 - pcre jit disabled Thu Jan 8 23:32:29 2026 - detected number of CPU cores: 12 Thu Jan 8 23:32:29 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:32:29 2026 - writing pidfile to ./uwsgi-wechat.pid Thu Jan 8 23:32:29 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Thu Jan 8 23:32:29 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:32:29 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:32:29 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:32:29 2026 - your processes number limit is 61306 Thu Jan 8 23:32:29 2026 - your memory page size is 4096 bytes Thu Jan 8 23:32:29 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Thu Jan 8 23:32:29 2026 - detected max file descriptor number: 1024 Thu Jan 8 23:32:29 2026 - lock engine: pthread robust mutexes Thu Jan 8 23:32:29 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Thu Jan 8 23:32:29 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 4 Thu Jan 8 23:32:29 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:39677 (port auto-assigned) fd 3 Thu Jan 8 23:32:29 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:32:29 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:32:29 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Thu Jan 8 23:32:29 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:32:29 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:32:29 2026 - Python main interpreter initialized at 0x7afe74752d10 Thu Jan 8 23:32:29 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:32:29 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:32:29 2026 - python threads support enabled Thu Jan 8 23:32:29 2026 - your server socket listen backlog is limited to 100 connections Thu Jan 8 23:32:29 2026 - your mercy for graceful operations on workers is 60 seconds Thu Jan 8 23:32:29 2026 - mapped 250032 bytes (244 KB) for 4 cores Thu Jan 8 23:32:29 2026 - *** Operational MODE: preforking+threaded *** 应用创建失败: invalid character '🧹' (U+1F9F9) (message_handler.py, line 866) Thu Jan 8 23:32:29 2026 - VACUUM: pidfile removed. Thu Jan 8 23:52:06 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Thu Jan 8 23:52:06 2026] *** Thu Jan 8 23:52:06 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Thu Jan 8 23:52:06 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Thu Jan 8 23:52:06 2026 - nodename: ubserver Thu Jan 8 23:52:06 2026 - machine: x86_64 Thu Jan 8 23:52:06 2026 - clock source: unix Thu Jan 8 23:52:06 2026 - pcre jit disabled Thu Jan 8 23:52:06 2026 - detected number of CPU cores: 12 Thu Jan 8 23:52:06 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:52:06 2026 - writing pidfile to ./uwsgi-wechat.pid Thu Jan 8 23:52:06 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Thu Jan 8 23:52:06 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:52:06 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:52:06 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Thu Jan 8 23:52:06 2026 - your processes number limit is 61306 Thu Jan 8 23:52:06 2026 - your memory page size is 4096 bytes Thu Jan 8 23:52:06 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Thu Jan 8 23:52:06 2026 - detected max file descriptor number: 1024 Thu Jan 8 23:52:06 2026 - lock engine: pthread robust mutexes Thu Jan 8 23:52:06 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Thu Jan 8 23:52:06 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 4 Thu Jan 8 23:52:06 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:38137 (port auto-assigned) fd 3 Thu Jan 8 23:52:06 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:52:06 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:52:06 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Thu Jan 8 23:52:06 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:52:06 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Thu Jan 8 23:52:06 2026 - Python main interpreter initialized at 0x7e4ab4d52d10 Thu Jan 8 23:52:06 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:52:06 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:52:06 2026 - python threads support enabled Thu Jan 8 23:52:06 2026 - your server socket listen backlog is limited to 100 connections Thu Jan 8 23:52:06 2026 - your mercy for graceful operations on workers is 60 seconds Thu Jan 8 23:52:06 2026 - mapped 250032 bytes (244 KB) for 4 cores Thu Jan 8 23:52:06 2026 - *** Operational MODE: preforking+threaded *** 2026-01-08 23:52:07 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-08 23:52:07 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Thu Jan 8 23:52:07 2026 - WSGI app 0 (mountpoint='') ready in 1 seconds on interpreter 0x7e4ab4d52d10 pid: 1616302 (default app) Thu Jan 8 23:52:07 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Thu Jan 8 23:52:07 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Thu Jan 8 23:52:07 2026 - *** uWSGI is running in multiple interpreter mode *** Thu Jan 8 23:52:07 2026 - spawned uWSGI master process (pid: 1616302) Thu Jan 8 23:52:07 2026 - spawned uWSGI worker 1 (pid: 1616321, cores: 2) Thu Jan 8 23:52:07 2026 - spawned uWSGI worker 2 (pid: 1616322, cores: 2) Thu Jan 8 23:52:07 2026 - spawned uWSGI http 1 (pid: 1616325) Thu Jan 8 23:52:07 2026 - Python auto-reloader enabled 2026-01-08 23:52:13 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-08 23:52:13 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: n59OiXnRr3zM6BW5uVWSYT6UKG/jwApIhfJmwxnP9GpaH3WRsC... 2026-01-08 23:52:13 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 887eba908c181e0228de54116517e004e6d673d3 2026-01-08 23:52:13 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 887eba908c181e0228de54116517e004e6d673d3 2026-01-08 23:52:13 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-08 23:52:13 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-08 23:52:13 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=event 2026-01-08 23:52:13 - gx_gp_monitor.wechat.callback_server - INFO - 处理事件消息: event=click, event_key=today_stats, user=WeiJueSen 2026-01-08 23:52:13 - gx_gp_monitor.wechat.message_handler - INFO - 处理事件: click, key: today_stats, user: WeiJueSen 2026-01-08 23:52:13 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 请求今日统计 2026-01-08 23:52:13 - gx_gp_monitor.main - INFO - === 广西政府采购网公告监控系统启动 === 2026-01-08 23:52:13 - gx_gp_monitor.main - INFO - 版本: 1.0.0 2026-01-08 23:52:13 - gx_gp_monitor.main - INFO - 配置文件: 默认配置 2026-01-08 23:52:13 - gx_gp_monitor.core.reliability - INFO - 健康检查通过 2026-01-08 23:52:13 - gx_gp_monitor.core.database - INFO - 数据库连接池初始化成功 2026-01-08 23:52:13 - gx_gp_monitor.core.database - INFO - 开始初始化数据库表结构 2026-01-08 23:52:13 - gx_gp_monitor.core.database - INFO - 数据库表结构初始化完成 2026-01-08 23:52:13 - gx_gp_monitor.storage.postgresql - INFO - 存储初始化完成 2026-01-08 23:52:13 - gx_gp_monitor.main - INFO - 应用初始化完成 {address space usage: 236015616 bytes/225MB} {rss usage: 47742976 bytes/45MB} [pid: 1616322|app: 0|req: 1/1] 14.116.241.251 () {36 vars in 679 bytes} [Thu Jan 8 23:52:13 2026] POST /api/v1/wechat/callback?msg_signature=887eba908c181e0228de54116517e004e6d673d3×tamp=1767887533&nonce=1767435597 => generated 966 bytes in 199 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 0) 2026-01-08 23:52:21 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-08 23:52:21 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: byLoJ8C5/EIdNJGq7flLu3wK+9KeXhAbFlWGZ4SKbrq/jzVScQ... 2026-01-08 23:52:21 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 0d4231a984a41081739519e49ef91e1a62af27c2 2026-01-08 23:52:21 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 0d4231a984a41081739519e49ef91e1a62af27c2 2026-01-08 23:52:21 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-08 23:52:21 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-08 23:52:21 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=event 2026-01-08 23:52:21 - gx_gp_monitor.wechat.callback_server - INFO - 处理事件消息: event=click, event_key=keyword_manage, user=WeiJueSen 2026-01-08 23:52:21 - gx_gp_monitor.wechat.message_handler - INFO - 处理事件: click, key: keyword_manage, user: WeiJueSen 2026-01-08 23:52:21 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 请求关键词管理 {address space usage: 236015616 bytes/225MB} {rss usage: 47742976 bytes/45MB} [pid: 1616322|app: 0|req: 2/2] 183.47.98.168 () {36 vars in 678 bytes} [Thu Jan 8 23:52:21 2026] POST /api/v1/wechat/callback?msg_signature=0d4231a984a41081739519e49ef91e1a62af27c2×tamp=1767887541&nonce=1767324070 => generated 1010 bytes in 1 msecs (HTTP/1.1 200) 2 headers in 81 bytes (1 switches on core 1) 2026-01-09 00:10:09 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 00:10:09 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: lD6k2bCX3whG0WVivcAAby7GwI0fzF4lElViOb36QW2etFd8aF... 2026-01-09 00:10:09 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 8da1cb947170f3a975db580b0a1a03dc4fbc922a 2026-01-09 00:10:09 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 8da1cb947170f3a975db580b0a1a03dc4fbc922a 2026-01-09 00:10:09 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 00:10:09 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 00:10:09 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=text 2026-01-09 00:10:09 - gx_gp_monitor.wechat.callback_server - INFO - 处理文本消息: content=大化..., user=WeiJueSen 2026-01-09 00:10:09 - gx_gp_monitor.wechat.message_handler - INFO - 处理文本消息: 大化, user: WeiJueSen 2026-01-09 00:10:09 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 关键词搜索: ['大化'] 2026-01-09 00:10:09 - gx_gp_monitor.main - INFO - 开始执行搜索任务 (手动搜索: True) 2026-01-09 00:10:09 - gx_gp_monitor.core.reliability - INFO - 健康检查通过 2026-01-09 00:10:09 - gx_gp_monitor.crawler.spider - INFO - 开始爬取 13 个公告来源 2026-01-09 00:10:09 - gx_gp_monitor - INFO - 开始爬取 采购公告 2026-01-09 00:10:14 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 00:10:14 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: lD6k2bCX3whG0WVivcAAby7GwI0fzF4lElViOb36QW2etFd8aF... 2026-01-09 00:10:14 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 8da1cb947170f3a975db580b0a1a03dc4fbc922a 2026-01-09 00:10:14 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 8da1cb947170f3a975db580b0a1a03dc4fbc922a 2026-01-09 00:10:14 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 00:10:14 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 00:10:14 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=text 2026-01-09 00:10:14 - gx_gp_monitor.wechat.callback_server - INFO - 处理文本消息: content=大化..., user=WeiJueSen 2026-01-09 00:10:14 - gx_gp_monitor.wechat.message_handler - INFO - 处理文本消息: 大化, user: WeiJueSen 2026-01-09 00:10:14 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 关键词搜索: ['大化'] 2026-01-09 00:10:14 - gx_gp_monitor.main - INFO - 开始执行搜索任务 (手动搜索: True) 2026-01-09 00:10:14 - gx_gp_monitor.crawler.spider - INFO - 开始爬取 13 个公告来源 2026-01-09 00:10:14 - gx_gp_monitor - INFO - 开始爬取 采购公告 2026-01-09 00:10:15 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 00:10:15 - gx_gp_monitor - INFO - 采购公告 爬取完成,共获取 100 条公告,耗时 0.48秒 2026-01-09 00:10:15 - gx_gp_monitor - INFO - 开始爬取 结果公告 2026-01-09 00:10:15 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 00:10:15 - gx_gp_monitor - INFO - 结果公告 爬取完成,共获取 100 条公告,耗时 0.22秒 2026-01-09 00:10:15 - gx_gp_monitor - INFO - 开始爬取 合同公告 2026-01-09 00:10:15 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 00:10:15 - gx_gp_monitor - INFO - 合同公告 爬取完成,共获取 100 条公告,耗时 0.23秒 2026-01-09 00:10:15 - gx_gp_monitor - INFO - 开始爬取 更正公告 2026-01-09 00:10:15 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 00:10:15 - gx_gp_monitor - INFO - 更正公告 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 00:10:15 - gx_gp_monitor - INFO - 开始爬取 招标文件预公示 2026-01-09 00:10:15 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 00:10:15 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: 2V3aU/4FO7zlAhJFhCe168paUJgMT77M+FAB4jNUk/NXWcWgDl... 2026-01-09 00:10:15 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 971fef79a492b4102de1d93d6fc27160160dea60 2026-01-09 00:10:15 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 971fef79a492b4102de1d93d6fc27160160dea60 2026-01-09 00:10:15 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 00:10:15 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 00:10:15 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=event 2026-01-09 00:10:15 - gx_gp_monitor.wechat.callback_server - INFO - 处理事件消息: event=click, event_key=keyword_search, user=WeiJueSen 2026-01-09 00:10:15 - gx_gp_monitor.wechat.message_handler - INFO - 处理事件: click, key: keyword_search, user: WeiJueSen 2026-01-09 00:10:15 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 触发关键词搜索菜单 {address space usage: 234016768 bytes/223MB} {rss usage: 39407616 bytes/37MB} [pid: 1616321|app: 0|req: 1/3] 183.47.98.227 () {36 vars in 678 bytes} [Fri Jan 9 00:10:15 2026] POST /api/v1/wechat/callback?msg_signature=971fef79a492b4102de1d93d6fc27160160dea60×tamp=1767888615&nonce=1767172344 => generated 1054 bytes in 6 msecs (HTTP/1.1 200) 2 headers in 81 bytes (1 switches on core 0) 2026-01-09 00:10:15 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 00:10:15 - gx_gp_monitor - INFO - 招标文件预公示 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 00:10:15 - gx_gp_monitor - INFO - 开始爬取 单一来源公示 2026-01-09 00:10:16 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 00:10:16 - gx_gp_monitor - INFO - 单一来源公示 爬取完成,共获取 100 条公告,耗时 0.17秒 2026-01-09 00:10:16 - gx_gp_monitor - INFO - 开始爬取 电子卖场公示 2026-01-09 00:10:16 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 00:10:16 - gx_gp_monitor - INFO - 电子卖场公示 爬取完成,共获取 100 条公告,耗时 0.32秒 2026-01-09 00:10:16 - gx_gp_monitor - INFO - 开始爬取 履约验收公示 2026-01-09 00:10:16 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 00:10:16 - gx_gp_monitor - INFO - 履约验收公示 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 00:10:16 - gx_gp_monitor - INFO - 开始爬取 工程类公告 2026-01-09 00:10:16 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 00:10:16 - gx_gp_monitor - INFO - 工程类公告 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 00:10:16 - gx_gp_monitor - INFO - 开始爬取 框架协议征集公告 2026-01-09 00:10:16 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 00:10:16 - gx_gp_monitor - INFO - 框架协议征集公告 爬取完成,共获取 100 条公告,耗时 0.21秒 2026-01-09 00:10:16 - gx_gp_monitor - INFO - 开始爬取 框架协议入围结果公告 2026-01-09 00:10:17 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 00:10:17 - gx_gp_monitor - INFO - 框架协议入围结果公告 爬取完成,共获取 100 条公告,耗时 0.21秒 2026-01-09 00:10:17 - gx_gp_monitor - INFO - 开始爬取 框架协议成交结果汇总公告 2026-01-09 00:10:17 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 00:10:17 - gx_gp_monitor - INFO - 框架协议成交结果汇总公告 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 00:10:17 - gx_gp_monitor - INFO - 开始爬取 采购意向公开 2026-01-09 00:10:17 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 00:10:17 - gx_gp_monitor - INFO - 采购意向公开 爬取完成,共获取 100 条公告,耗时 0.26秒 2026-01-09 00:10:17 - gx_gp_monitor.crawler.spider - INFO - 爬取完成: 共处理 13 个来源,成功 13 个,失败 0 个,获取 1300 条公告 2026-01-09 00:10:17 - gx_gp_monitor.main - INFO - 搜索到 1300 条原始公告 2026-01-09 00:10:17 - gx_gp_monitor.main - INFO - 手动搜索模式:跳过数据库保存 2026-01-09 00:10:17 - gx_gp_monitor.filters.filters - INFO - 日期筛选: 1300 -> 0 条公告 2026-01-09 00:10:17 - gx_gp_monitor.filters.filters - INFO - 关键词筛选: 0 -> 0 条公告 2026-01-09 00:10:17 - gx_gp_monitor.filters.filters - INFO - 来源筛选: 0 -> 0 条公告 2026-01-09 00:10:17 - gx_gp_monitor.main - INFO - 筛选后剩余 0 条公告 2026-01-09 00:10:17 - gx_gp_monitor.main - INFO - 手动爬取模式:跳过筛选后公告的数据库保存 2026-01-09 00:10:17 - gx_gp_monitor.main - INFO - 爬取任务完成: {'success': True, 'total_crawled': 1300, 'filtered': 0, 'saved': 0, 'markdown_generated': False, 'notification_sent': False, 'filter_stats': {'keyword_filtered': 0, 'date_filtered': 1300, 'duplicate_filtered': 0, 'source_filtered': 0}, 'filtered_announcements': []} {address space usage: 250101760 bytes/238MB} {rss usage: 68210688 bytes/65MB} [pid: 1616322|app: 0|req: 4/4] 106.55.202.215 () {36 vars in 679 bytes} [Fri Jan 9 00:10:14 2026] POST /api/v1/wechat/callback?msg_signature=8da1cb947170f3a975db580b0a1a03dc4fbc922a×tamp=1767888609&nonce=1767456212 => generated 798 bytes in 3065 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 1) 2026-01-09 00:10:40 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 00:10:40 - gx_gp_monitor - INFO - 采购公告 爬取完成,共获取 100 条公告,耗时 30.51秒 2026-01-09 00:10:40 - gx_gp_monitor - INFO - 开始爬取 结果公告 2026-01-09 00:10:40 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 00:10:40 - gx_gp_monitor - INFO - 结果公告 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 00:10:40 - gx_gp_monitor - INFO - 开始爬取 合同公告 2026-01-09 00:10:40 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 00:10:40 - gx_gp_monitor - INFO - 合同公告 爬取完成,共获取 100 条公告,耗时 0.27秒 2026-01-09 00:10:40 - gx_gp_monitor - INFO - 开始爬取 更正公告 2026-01-09 00:10:40 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 00:10:40 - gx_gp_monitor - INFO - 更正公告 爬取完成,共获取 100 条公告,耗时 0.26秒 2026-01-09 00:10:40 - gx_gp_monitor - INFO - 开始爬取 招标文件预公示 2026-01-09 00:10:41 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 00:10:41 - gx_gp_monitor - INFO - 招标文件预公示 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 00:10:41 - gx_gp_monitor - INFO - 开始爬取 单一来源公示 2026-01-09 00:10:41 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 00:10:41 - gx_gp_monitor - INFO - 单一来源公示 爬取完成,共获取 100 条公告,耗时 0.23秒 2026-01-09 00:10:41 - gx_gp_monitor - INFO - 开始爬取 电子卖场公示 2026-01-09 00:10:41 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 00:10:41 - gx_gp_monitor - INFO - 电子卖场公示 爬取完成,共获取 100 条公告,耗时 0.36秒 2026-01-09 00:10:41 - gx_gp_monitor - INFO - 开始爬取 履约验收公示 2026-01-09 00:10:41 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 00:10:41 - gx_gp_monitor - INFO - 履约验收公示 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 00:10:41 - gx_gp_monitor - INFO - 开始爬取 工程类公告 2026-01-09 00:10:42 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 00:10:42 - gx_gp_monitor - INFO - 工程类公告 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 00:10:42 - gx_gp_monitor - INFO - 开始爬取 框架协议征集公告 2026-01-09 00:10:42 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 00:10:42 - gx_gp_monitor - INFO - 框架协议征集公告 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 00:10:42 - gx_gp_monitor - INFO - 开始爬取 框架协议入围结果公告 2026-01-09 00:10:42 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 00:10:42 - gx_gp_monitor - INFO - 框架协议入围结果公告 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 00:10:42 - gx_gp_monitor - INFO - 开始爬取 框架协议成交结果汇总公告 2026-01-09 00:10:42 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 00:10:42 - gx_gp_monitor - INFO - 框架协议成交结果汇总公告 爬取完成,共获取 100 条公告,耗时 0.21秒 2026-01-09 00:10:42 - gx_gp_monitor - INFO - 开始爬取 采购意向公开 2026-01-09 00:10:42 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 00:10:42 - gx_gp_monitor - INFO - 采购意向公开 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 00:10:42 - gx_gp_monitor.crawler.spider - INFO - 爬取完成: 共处理 13 个来源,成功 13 个,失败 0 个,获取 1300 条公告 2026-01-09 00:10:42 - gx_gp_monitor.main - INFO - 搜索到 1300 条原始公告 2026-01-09 00:10:42 - gx_gp_monitor.main - INFO - 手动搜索模式:跳过数据库保存 2026-01-09 00:10:42 - gx_gp_monitor.filters.filters - INFO - 日期筛选: 1300 -> 1 条公告 2026-01-09 00:10:42 - gx_gp_monitor.filters.filters - INFO - 关键词筛选: 1 -> 0 条公告 2026-01-09 00:10:42 - gx_gp_monitor.filters.filters - INFO - 来源筛选: 0 -> 0 条公告 2026-01-09 00:10:42 - gx_gp_monitor.main - INFO - 筛选后剩余 0 条公告 2026-01-09 00:10:42 - gx_gp_monitor.main - INFO - 手动爬取模式:跳过筛选后公告的数据库保存 2026-01-09 00:10:42 - gx_gp_monitor.main - INFO - 爬取任务完成: {'success': True, 'total_crawled': 1300, 'filtered': 0, 'saved': 0, 'markdown_generated': False, 'notification_sent': False, 'filter_stats': {'keyword_filtered': 1, 'date_filtered': 1299, 'duplicate_filtered': 0, 'source_filtered': 0}, 'filtered_announcements': []} {address space usage: 242388992 bytes/231MB} {rss usage: 60600320 bytes/57MB} [pid: 1616322|app: 0|req: 4/5] 14.116.241.251 () {36 vars in 679 bytes} [Fri Jan 9 00:10:09 2026] POST /api/v1/wechat/callback?msg_signature=8da1cb947170f3a975db580b0a1a03dc4fbc922a×tamp=1767888609&nonce=1767456212 => generated 798 bytes in 33363 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 0) 2026-01-09 08:09:44 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 08:09:44 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: tc4EfnaoWAMd6veuWP3h1KALIuMqFaseXjRRVx9vm8aHsfZaFX... 2026-01-09 08:09:44 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 6367d32d17c91baf7f4e084d457653862e380d20 2026-01-09 08:09:44 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 6367d32d17c91baf7f4e084d457653862e380d20 2026-01-09 08:09:44 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 08:09:44 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 08:09:44 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=event 2026-01-09 08:09:44 - gx_gp_monitor.wechat.callback_server - INFO - 处理事件消息: event=click, event_key=announcements_by_type, user=WeiJueSen 2026-01-09 08:09:44 - gx_gp_monitor.wechat.message_handler - INFO - 处理事件: click, key: announcements_by_type, user: WeiJueSen 2026-01-09 08:09:44 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 请求按类型查看公告 2026-01-09 08:09:44 - gx_gp_monitor.core.database - INFO - 数据库连接池初始化成功 {address space usage: 234016768 bytes/223MB} {rss usage: 44326912 bytes/42MB} [pid: 1616321|app: 0|req: 2/6] 183.47.98.227 () {36 vars in 678 bytes} [Fri Jan 9 08:09:44 2026] POST /api/v1/wechat/callback?msg_signature=6367d32d17c91baf7f4e084d457653862e380d20×tamp=1767917384&nonce=1768231335 => generated 754 bytes in 31 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 1) 2026-01-09 08:09:54 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 08:09:54 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: KNXRojaaOOvMXAn/bS/jCuXblPiK3JZlgYTa3ZkP/NIaRLHdgd... 2026-01-09 08:09:54 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: f3151e52daaf7cd68feebc40d4c3be095a479eeb 2026-01-09 08:09:54 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: f3151e52daaf7cd68feebc40d4c3be095a479eeb 2026-01-09 08:09:54 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 08:09:54 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 08:09:54 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=event 2026-01-09 08:09:54 - gx_gp_monitor.wechat.callback_server - INFO - 处理事件消息: event=click, event_key=today_count, user=WeiJueSen 2026-01-09 08:09:54 - gx_gp_monitor.wechat.message_handler - INFO - 处理事件: click, key: today_count, user: WeiJueSen {address space usage: 242388992 bytes/231MB} {rss usage: 60600320 bytes/57MB} [pid: 1616322|app: 0|req: 5/7] 183.47.98.227 () {36 vars in 677 bytes} [Fri Jan 9 08:09:54 2026] POST /api/v1/wechat/callback?msg_signature=f3151e52daaf7cd68feebc40d4c3be095a479eeb×tamp=1767917394&nonce=1768669935 => generated 582 bytes in 1 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 1) 2026-01-09 08:10:03 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 08:10:03 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: WQBIDFITyc25ID3VlassbD4P/na15LN12tS+UlIJNMoPt5OIWl... 2026-01-09 08:10:03 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: c70c8e0f75d9e1e8673a812ba65eecc0fffefac0 2026-01-09 08:10:03 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: c70c8e0f75d9e1e8673a812ba65eecc0fffefac0 2026-01-09 08:10:03 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 08:10:03 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 08:10:03 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=event 2026-01-09 08:10:03 - gx_gp_monitor.wechat.callback_server - INFO - 处理事件消息: event=click, event_key=system_status, user=WeiJueSen 2026-01-09 08:10:03 - gx_gp_monitor.wechat.message_handler - INFO - 处理事件: click, key: system_status, user: WeiJueSen 2026-01-09 08:10:03 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 请求系统状态 2026-01-09 08:10:03 - gx_gp_monitor.notification.wechat - INFO - 企业微信服务初始化完成 2026-01-09 08:10:03 - gx_gp_monitor.notification.wechat - INFO - 成功获取企业微信访问令牌 {address space usage: 242388992 bytes/231MB} {rss usage: 60600320 bytes/57MB} [pid: 1616322|app: 0|req: 6/8] 183.47.98.168 () {36 vars in 678 bytes} [Fri Jan 9 08:10:03 2026] POST /api/v1/wechat/callback?msg_signature=c70c8e0f75d9e1e8673a812ba65eecc0fffefac0×tamp=1767917402&nonce=1768910559 => generated 1138 bytes in 330 msecs (HTTP/1.1 200) 2 headers in 81 bytes (1 switches on core 0) 2026-01-09 08:24:28 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 08:24:28 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: xWHwlcwe4cuIn2AK6nBzQ9q5zV0+ugoj8SRfP7xMMSCVEgHK2c... 2026-01-09 08:24:28 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: fe4d3cd3694a6e377ca8a65dba40280dc9567e06 2026-01-09 08:24:28 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: fe4d3cd3694a6e377ca8a65dba40280dc9567e06 2026-01-09 08:24:28 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 08:24:28 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 08:24:28 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=event 2026-01-09 08:24:28 - gx_gp_monitor.wechat.callback_server - INFO - 处理事件消息: event=click, event_key=system_status, user=WeiJueSen 2026-01-09 08:24:28 - gx_gp_monitor.wechat.message_handler - INFO - 处理事件: click, key: system_status, user: WeiJueSen 2026-01-09 08:24:28 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 请求系统状态 2026-01-09 08:24:28 - gx_gp_monitor.notification.wechat - INFO - 企业微信服务初始化完成 2026-01-09 08:24:28 - gx_gp_monitor.notification.wechat - INFO - 成功获取企业微信访问令牌 {address space usage: 242388992 bytes/231MB} {rss usage: 60600320 bytes/57MB} [pid: 1616322|app: 0|req: 7/9] 183.47.117.101 () {36 vars in 679 bytes} [Fri Jan 9 08:24:28 2026] POST /api/v1/wechat/callback?msg_signature=fe4d3cd3694a6e377ca8a65dba40280dc9567e06×tamp=1767918267&nonce=1768912568 => generated 1138 bytes in 257 msecs (HTTP/1.1 200) 2 headers in 81 bytes (1 switches on core 1) 2026-01-09 08:25:01 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 08:25:01 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: hqqxYVpVNxT1Qj5jt+eIUo3YItaTa0mdudcHd/kc2ov6qd7tVB... 2026-01-09 08:25:01 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 0a03ded284404f7444d641fd5d85f6b692f76d42 2026-01-09 08:25:01 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 0a03ded284404f7444d641fd5d85f6b692f76d42 2026-01-09 08:25:01 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 08:25:01 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 08:25:01 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=event 2026-01-09 08:25:01 - gx_gp_monitor.wechat.callback_server - INFO - 处理事件消息: event=click, event_key=clear_cache, user=WeiJueSen 2026-01-09 08:25:01 - gx_gp_monitor.wechat.message_handler - INFO - 处理事件: click, key: clear_cache, user: WeiJueSen 2026-01-09 08:25:01 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 请求清理缓存 2026-01-09 08:25:01 - gx_gp_monitor.wechat.message_handler - WARNING - 数据库缓存清理失败: cannot import name 'clear_database_cache' from 'gx_gp_monitor.storage.postgresql' (/home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/storage/postgresql.py) {address space usage: 242388992 bytes/231MB} {rss usage: 60600320 bytes/57MB} [pid: 1616322|app: 0|req: 8/10] 14.116.241.251 () {36 vars in 679 bytes} [Fri Jan 9 08:25:01 2026] POST /api/v1/wechat/callback?msg_signature=0a03ded284404f7444d641fd5d85f6b692f76d42×tamp=1767918301&nonce=1768654455 => generated 966 bytes in 1 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 0) Fri Jan 9 08:25:34 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 08:25:34 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 08:25:34 2026 - gateway "uWSGI http 1" has been buried (pid: 1616325) Fri Jan 9 08:25:34 2026 - ...gracefully killing workers... Fri Jan 9 08:25:34 2026 - Gracefully killing worker 1 (pid: 1616321)... Fri Jan 9 08:25:34 2026 - Gracefully killing worker 2 (pid: 1616322)... Fri Jan 9 08:25:35 2026 - worker 1 buried after 1 seconds Fri Jan 9 08:25:35 2026 - worker 2 buried after 1 seconds Fri Jan 9 08:25:35 2026 - binary reloading uWSGI... Fri Jan 9 08:25:35 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:25:35 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 08:25:35 2026 - found fd 3 mapped to socket 0 (127.0.0.1:38137) Fri Jan 9 08:25:35 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 08:25:35 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 08:25:35 2026] *** Fri Jan 9 08:25:35 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 08:25:35 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 08:25:35 2026 - nodename: ubserver Fri Jan 9 08:25:35 2026 - machine: x86_64 Fri Jan 9 08:25:35 2026 - clock source: unix Fri Jan 9 08:25:35 2026 - pcre jit disabled Fri Jan 9 08:25:35 2026 - detected number of CPU cores: 12 Fri Jan 9 08:25:35 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:25:35 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 08:25:35 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:25:35 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:25:35 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:25:35 2026 - your processes number limit is 61306 Fri Jan 9 08:25:35 2026 - your memory page size is 4096 bytes Fri Jan 9 08:25:35 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 08:25:35 2026 - detected max file descriptor number: 1024 Fri Jan 9 08:25:35 2026 - lock engine: pthread robust mutexes Fri Jan 9 08:25:35 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 08:25:35 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 08:25:35 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:43151 (port auto-assigned) fd 4 Fri Jan 9 08:25:35 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:25:35 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:25:35 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 08:25:35 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 08:25:35 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 08:25:35 2026 - Python main interpreter initialized at 0x791842f52d10 Fri Jan 9 08:25:35 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:25:35 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:25:35 2026 - python threads support enabled Fri Jan 9 08:25:35 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 08:25:35 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 08:25:35 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 08:25:35 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 08:25:36 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 08:25:36 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 08:25:36 2026 - WSGI app 0 (mountpoint='') ready in 1 seconds on interpreter 0x791842f52d10 pid: 1616302 (default app) Fri Jan 9 08:25:36 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:25:36 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:25:36 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 08:25:36 2026 - gracefully (RE)spawned uWSGI master process (pid: 1616302) Fri Jan 9 08:25:36 2026 - spawned uWSGI worker 1 (pid: 1776212, cores: 2) Fri Jan 9 08:25:36 2026 - spawned uWSGI worker 2 (pid: 1776213, cores: 2) Fri Jan 9 08:25:36 2026 - spawned uWSGI http 1 (pid: 1776217) Fri Jan 9 08:25:36 2026 - Python auto-reloader enabled Fri Jan 9 08:25:49 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 08:25:49 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 08:25:49 2026 - gateway "uWSGI http 1" has been buried (pid: 1776217) Fri Jan 9 08:25:49 2026 - ...gracefully killing workers... Fri Jan 9 08:25:49 2026 - Gracefully killing worker 1 (pid: 1776212)... Fri Jan 9 08:25:49 2026 - Gracefully killing worker 2 (pid: 1776213)... Fri Jan 9 08:25:50 2026 - worker 1 buried after 1 seconds Fri Jan 9 08:25:50 2026 - worker 2 buried after 1 seconds Fri Jan 9 08:25:50 2026 - binary reloading uWSGI... Fri Jan 9 08:25:50 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:25:50 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 08:25:50 2026 - found fd 4 mapped to socket 0 (127.0.0.1:43151) Fri Jan 9 08:25:50 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 08:25:50 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 08:25:50 2026] *** Fri Jan 9 08:25:50 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 08:25:50 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 08:25:50 2026 - nodename: ubserver Fri Jan 9 08:25:50 2026 - machine: x86_64 Fri Jan 9 08:25:50 2026 - clock source: unix Fri Jan 9 08:25:50 2026 - pcre jit disabled Fri Jan 9 08:25:50 2026 - detected number of CPU cores: 12 Fri Jan 9 08:25:50 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:25:50 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 08:25:50 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:25:50 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:25:50 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:25:50 2026 - your processes number limit is 61306 Fri Jan 9 08:25:50 2026 - your memory page size is 4096 bytes Fri Jan 9 08:25:50 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 08:25:50 2026 - detected max file descriptor number: 1024 Fri Jan 9 08:25:50 2026 - lock engine: pthread robust mutexes Fri Jan 9 08:25:50 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 08:25:50 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 08:25:50 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:43709 (port auto-assigned) fd 3 Fri Jan 9 08:25:50 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:25:50 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:25:50 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 08:25:50 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 08:25:50 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 08:25:50 2026 - Python main interpreter initialized at 0x7dc283d52d10 Fri Jan 9 08:25:50 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:25:50 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:25:50 2026 - python threads support enabled Fri Jan 9 08:25:50 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 08:25:50 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 08:25:50 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 08:25:50 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 08:25:50 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 08:25:50 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 08:25:50 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x7dc283d52d10 pid: 1616302 (default app) Fri Jan 9 08:25:50 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:25:50 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:25:50 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 08:25:50 2026 - gracefully (RE)spawned uWSGI master process (pid: 1616302) Fri Jan 9 08:25:50 2026 - spawned uWSGI worker 1 (pid: 1776419, cores: 2) Fri Jan 9 08:25:50 2026 - spawned uWSGI worker 2 (pid: 1776422, cores: 2) Fri Jan 9 08:25:50 2026 - Python auto-reloader enabled Fri Jan 9 08:25:50 2026 - spawned uWSGI http 1 (pid: 1776425) Fri Jan 9 08:25:59 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 08:25:59 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 08:25:59 2026 - gateway "uWSGI http 1" has been buried (pid: 1776425) Fri Jan 9 08:25:59 2026 - ...gracefully killing workers... Fri Jan 9 08:25:59 2026 - Gracefully killing worker 2 (pid: 1776422)... Fri Jan 9 08:25:59 2026 - Gracefully killing worker 1 (pid: 1776419)... Fri Jan 9 08:26:00 2026 - worker 1 buried after 1 seconds Fri Jan 9 08:26:00 2026 - worker 2 buried after 1 seconds Fri Jan 9 08:26:00 2026 - binary reloading uWSGI... Fri Jan 9 08:26:00 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:26:00 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 08:26:00 2026 - found fd 3 mapped to socket 0 (127.0.0.1:43709) Fri Jan 9 08:26:00 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 08:26:00 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 08:26:00 2026] *** Fri Jan 9 08:26:00 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 08:26:00 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 08:26:00 2026 - nodename: ubserver Fri Jan 9 08:26:00 2026 - machine: x86_64 Fri Jan 9 08:26:00 2026 - clock source: unix Fri Jan 9 08:26:00 2026 - pcre jit disabled Fri Jan 9 08:26:00 2026 - detected number of CPU cores: 12 Fri Jan 9 08:26:00 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:26:00 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 08:26:00 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:26:00 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:26:00 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:26:00 2026 - your processes number limit is 61306 Fri Jan 9 08:26:00 2026 - your memory page size is 4096 bytes Fri Jan 9 08:26:00 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 08:26:00 2026 - detected max file descriptor number: 1024 Fri Jan 9 08:26:00 2026 - lock engine: pthread robust mutexes Fri Jan 9 08:26:00 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 08:26:00 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 08:26:00 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:41863 (port auto-assigned) fd 4 Fri Jan 9 08:26:00 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:26:00 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:26:00 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 08:26:00 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 08:26:00 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 08:26:00 2026 - Python main interpreter initialized at 0x70a3e9552d10 Fri Jan 9 08:26:00 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:26:00 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:26:00 2026 - python threads support enabled Fri Jan 9 08:26:00 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 08:26:00 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 08:26:00 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 08:26:00 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 08:26:00 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 08:26:00 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 08:26:00 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x70a3e9552d10 pid: 1616302 (default app) Fri Jan 9 08:26:00 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:26:00 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:26:00 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 08:26:00 2026 - gracefully (RE)spawned uWSGI master process (pid: 1616302) Fri Jan 9 08:26:00 2026 - spawned uWSGI worker 1 (pid: 1776493, cores: 2) Fri Jan 9 08:26:00 2026 - spawned uWSGI worker 2 (pid: 1776494, cores: 2) Fri Jan 9 08:26:00 2026 - spawned uWSGI http 1 (pid: 1776497) Fri Jan 9 08:26:00 2026 - Python auto-reloader enabled Fri Jan 9 08:26:19 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 08:26:19 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 08:26:19 2026 - gateway "uWSGI http 1" has been buried (pid: 1776497) Fri Jan 9 08:26:19 2026 - ...gracefully killing workers... Fri Jan 9 08:26:19 2026 - Gracefully killing worker 1 (pid: 1776493)... Fri Jan 9 08:26:19 2026 - Gracefully killing worker 2 (pid: 1776494)... Fri Jan 9 08:26:20 2026 - worker 1 buried after 1 seconds Fri Jan 9 08:26:20 2026 - worker 2 buried after 1 seconds Fri Jan 9 08:26:20 2026 - binary reloading uWSGI... Fri Jan 9 08:26:20 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:26:20 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 08:26:20 2026 - found fd 4 mapped to socket 0 (127.0.0.1:41863) Fri Jan 9 08:26:20 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 08:26:20 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 08:26:20 2026] *** Fri Jan 9 08:26:20 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 08:26:20 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 08:26:20 2026 - nodename: ubserver Fri Jan 9 08:26:20 2026 - machine: x86_64 Fri Jan 9 08:26:20 2026 - clock source: unix Fri Jan 9 08:26:20 2026 - pcre jit disabled Fri Jan 9 08:26:20 2026 - detected number of CPU cores: 12 Fri Jan 9 08:26:20 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:26:20 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 08:26:20 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:26:20 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:26:20 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:26:20 2026 - your processes number limit is 61306 Fri Jan 9 08:26:20 2026 - your memory page size is 4096 bytes Fri Jan 9 08:26:20 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 08:26:20 2026 - detected max file descriptor number: 1024 Fri Jan 9 08:26:20 2026 - lock engine: pthread robust mutexes Fri Jan 9 08:26:20 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 08:26:20 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 08:26:20 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:40093 (port auto-assigned) fd 3 Fri Jan 9 08:26:20 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:26:20 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:26:20 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 08:26:20 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 08:26:20 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 08:26:20 2026 - Python main interpreter initialized at 0x74aa13f52d10 Fri Jan 9 08:26:20 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:26:20 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:26:20 2026 - python threads support enabled Fri Jan 9 08:26:20 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 08:26:20 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 08:26:20 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 08:26:20 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 08:26:20 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 08:26:20 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 08:26:20 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x74aa13f52d10 pid: 1616302 (default app) Fri Jan 9 08:26:20 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:26:20 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:26:20 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 08:26:20 2026 - gracefully (RE)spawned uWSGI master process (pid: 1616302) Fri Jan 9 08:26:20 2026 - spawned uWSGI worker 1 (pid: 1776685, cores: 2) Fri Jan 9 08:26:20 2026 - spawned uWSGI worker 2 (pid: 1776686, cores: 2) Fri Jan 9 08:26:20 2026 - spawned uWSGI http 1 (pid: 1776689) Fri Jan 9 08:26:20 2026 - Python auto-reloader enabled Fri Jan 9 08:26:31 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 08:26:31 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 08:26:31 2026 - gateway "uWSGI http 1" has been buried (pid: 1776689) Fri Jan 9 08:26:31 2026 - ...gracefully killing workers... Fri Jan 9 08:26:31 2026 - Gracefully killing worker 1 (pid: 1776685)... Fri Jan 9 08:26:31 2026 - Gracefully killing worker 2 (pid: 1776686)... Fri Jan 9 08:26:32 2026 - worker 1 buried after 1 seconds Fri Jan 9 08:26:32 2026 - worker 2 buried after 1 seconds Fri Jan 9 08:26:32 2026 - binary reloading uWSGI... Fri Jan 9 08:26:32 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:26:32 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 08:26:32 2026 - found fd 3 mapped to socket 0 (127.0.0.1:40093) Fri Jan 9 08:26:32 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 08:26:32 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 08:26:32 2026] *** Fri Jan 9 08:26:32 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 08:26:32 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 08:26:32 2026 - nodename: ubserver Fri Jan 9 08:26:32 2026 - machine: x86_64 Fri Jan 9 08:26:32 2026 - clock source: unix Fri Jan 9 08:26:32 2026 - pcre jit disabled Fri Jan 9 08:26:32 2026 - detected number of CPU cores: 12 Fri Jan 9 08:26:32 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:26:32 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 08:26:32 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:26:32 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:26:32 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:26:32 2026 - your processes number limit is 61306 Fri Jan 9 08:26:32 2026 - your memory page size is 4096 bytes Fri Jan 9 08:26:32 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 08:26:32 2026 - detected max file descriptor number: 1024 Fri Jan 9 08:26:32 2026 - lock engine: pthread robust mutexes Fri Jan 9 08:26:32 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 08:26:32 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 08:26:32 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:36999 (port auto-assigned) fd 4 Fri Jan 9 08:26:32 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:26:32 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:26:32 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 08:26:32 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 08:26:32 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 08:26:32 2026 - Python main interpreter initialized at 0x7cd2f3552d10 Fri Jan 9 08:26:32 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:26:32 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:26:32 2026 - python threads support enabled Fri Jan 9 08:26:32 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 08:26:32 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 08:26:32 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 08:26:32 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 08:26:32 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 08:26:32 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 08:26:32 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x7cd2f3552d10 pid: 1616302 (default app) Fri Jan 9 08:26:32 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:26:32 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:26:32 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 08:26:32 2026 - gracefully (RE)spawned uWSGI master process (pid: 1616302) Fri Jan 9 08:26:32 2026 - spawned uWSGI worker 1 (pid: 1776759, cores: 2) Fri Jan 9 08:26:32 2026 - spawned uWSGI worker 2 (pid: 1776760, cores: 2) Fri Jan 9 08:26:32 2026 - spawned uWSGI http 1 (pid: 1776765) Fri Jan 9 08:26:32 2026 - Python auto-reloader enabled Fri Jan 9 08:28:10 2026 - gateway "uWSGI http 1" has been buried (pid: 1776765) Fri Jan 9 08:28:10 2026 - ...brutally killing workers... Fri Jan 9 08:28:11 2026 - worker 1 buried after 1 seconds Fri Jan 9 08:28:11 2026 - worker 2 buried after 1 seconds Fri Jan 9 08:28:11 2026 - binary reloading uWSGI... Fri Jan 9 08:28:11 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:28:11 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 08:28:11 2026 - found fd 4 mapped to socket 0 (127.0.0.1:36999) Fri Jan 9 08:28:11 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 08:28:11 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 08:28:11 2026] *** Fri Jan 9 08:28:11 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 08:28:11 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 08:28:11 2026 - nodename: ubserver Fri Jan 9 08:28:11 2026 - machine: x86_64 Fri Jan 9 08:28:11 2026 - clock source: unix Fri Jan 9 08:28:11 2026 - pcre jit disabled Fri Jan 9 08:28:11 2026 - detected number of CPU cores: 12 Fri Jan 9 08:28:11 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:28:11 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 08:28:11 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:28:11 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:28:11 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:28:11 2026 - your processes number limit is 61306 Fri Jan 9 08:28:11 2026 - your memory page size is 4096 bytes Fri Jan 9 08:28:11 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 08:28:11 2026 - detected max file descriptor number: 1024 Fri Jan 9 08:28:11 2026 - lock engine: pthread robust mutexes Fri Jan 9 08:28:11 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 08:28:11 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 08:28:11 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:41691 (port auto-assigned) fd 3 Fri Jan 9 08:28:11 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:28:11 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:28:11 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 08:28:11 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 08:28:11 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 08:28:11 2026 - Python main interpreter initialized at 0x70645f552d10 Fri Jan 9 08:28:11 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:28:11 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:28:11 2026 - python threads support enabled Fri Jan 9 08:28:11 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 08:28:11 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 08:28:11 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 08:28:11 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 08:28:11 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 08:28:11 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 08:28:11 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x70645f552d10 pid: 1616302 (default app) Fri Jan 9 08:28:11 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:28:11 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:28:11 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 08:28:11 2026 - gracefully (RE)spawned uWSGI master process (pid: 1616302) Fri Jan 9 08:28:11 2026 - spawned uWSGI worker 1 (pid: 1777277, cores: 2) Fri Jan 9 08:28:11 2026 - spawned uWSGI worker 2 (pid: 1777278, cores: 2) Fri Jan 9 08:28:11 2026 - spawned uWSGI http 1 (pid: 1777282) Fri Jan 9 08:28:11 2026 - Python auto-reloader enabled Fri Jan 9 08:28:20 2026 - uWSGI worker 1 error: the master disconnected from this worker. Shutting down the worker. Fri Jan 9 08:28:20 2026 - uWSGI worker 2 error: the master disconnected from this worker. Shutting down the worker. Fri Jan 9 08:28:20 2026 - uWSGI worker 2 error: the master disconnected from this worker. Shutting down the worker. Fri Jan 9 08:28:20 2026 - uWSGI worker 1 error: the master disconnected from this worker. Shutting down the worker. Fri Jan 9 08:28:20 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 08:28:20 2026] *** Fri Jan 9 08:28:20 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 08:28:20 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 08:28:20 2026 - nodename: ubserver Fri Jan 9 08:28:20 2026 - machine: x86_64 Fri Jan 9 08:28:20 2026 - clock source: unix Fri Jan 9 08:28:20 2026 - pcre jit disabled Fri Jan 9 08:28:20 2026 - detected number of CPU cores: 12 Fri Jan 9 08:28:20 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:28:20 2026 - writing pidfile to ./uwsgi-wechat.pid Fri Jan 9 08:28:20 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 08:28:20 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:28:20 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:28:20 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:28:20 2026 - your processes number limit is 61306 Fri Jan 9 08:28:20 2026 - your memory page size is 4096 bytes Fri Jan 9 08:28:20 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 08:28:20 2026 - detected max file descriptor number: 1024 Fri Jan 9 08:28:20 2026 - lock engine: pthread robust mutexes Fri Jan 9 08:28:20 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 08:28:20 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 4 Fri Jan 9 08:28:20 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:34359 (port auto-assigned) fd 3 Fri Jan 9 08:28:20 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:28:20 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:28:20 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 08:28:20 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 08:28:20 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 08:28:20 2026 - Python main interpreter initialized at 0x7a500b552d10 Fri Jan 9 08:28:20 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:28:20 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:28:20 2026 - python threads support enabled Fri Jan 9 08:28:20 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 08:28:20 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 08:28:20 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 08:28:20 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 08:28:20 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 08:28:20 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 08:28:20 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x7a500b552d10 pid: 1777323 (default app) Fri Jan 9 08:28:20 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:28:20 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:28:20 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 08:28:20 2026 - spawned uWSGI master process (pid: 1777323) Fri Jan 9 08:28:20 2026 - spawned uWSGI worker 1 (pid: 1777366, cores: 2) Fri Jan 9 08:28:20 2026 - spawned uWSGI worker 2 (pid: 1777369, cores: 2) Fri Jan 9 08:28:20 2026 - Python auto-reloader enabled Fri Jan 9 08:28:20 2026 - spawned uWSGI http 1 (pid: 1777371) 2026-01-09 08:29:48 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 08:29:48 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: RXM6iBy1lGhKEHAzzl71zQ7rpp8F43J/HveXh7oBV+Ohnzab4O... 2026-01-09 08:29:48 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: cdc12e2bef00f01d987d9ae321d300a1e5c36c12 2026-01-09 08:29:48 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: cdc12e2bef00f01d987d9ae321d300a1e5c36c12 2026-01-09 08:29:48 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 08:29:48 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 08:29:48 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=event 2026-01-09 08:29:48 - gx_gp_monitor.wechat.callback_server - INFO - 处理事件消息: event=click, event_key=system_status, user=WeiJueSen 2026-01-09 08:29:48 - gx_gp_monitor.wechat.message_handler - INFO - 处理事件: click, key: system_status, user: WeiJueSen 2026-01-09 08:29:48 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 请求系统状态 2026-01-09 08:29:48 - gx_gp_monitor.core.database - INFO - 数据库连接池初始化成功 2026-01-09 08:29:48 - gx_gp_monitor.core.database - INFO - 开始初始化数据库表结构 2026-01-09 08:29:48 - gx_gp_monitor.core.database - INFO - 数据库表结构初始化完成 2026-01-09 08:29:48 - gx_gp_monitor.main - INFO - === 广西政府采购网公告监控系统启动 === 2026-01-09 08:29:48 - gx_gp_monitor.main - INFO - 版本: 1.0.0 2026-01-09 08:29:48 - gx_gp_monitor.main - INFO - 配置文件: 默认配置 2026-01-09 08:29:48 - gx_gp_monitor.core.reliability - INFO - 健康检查通过 2026-01-09 08:29:48 - gx_gp_monitor.core.database - INFO - 开始初始化数据库表结构 2026-01-09 08:29:48 - gx_gp_monitor.core.database - INFO - 数据库表结构初始化完成 2026-01-09 08:29:48 - gx_gp_monitor.storage.postgresql - INFO - 存储初始化完成 2026-01-09 08:29:48 - gx_gp_monitor.main - INFO - 应用初始化完成 2026-01-09 08:29:48 - gx_gp_monitor.notification.wechat - INFO - 企业微信服务初始化完成 2026-01-09 08:29:49 - gx_gp_monitor.notification.wechat - INFO - 成功获取企业微信访问令牌 {address space usage: 236441600 bytes/225MB} {rss usage: 48242688 bytes/46MB} [pid: 1777366|app: 0|req: 1/1] 113.108.92.100 () {36 vars in 679 bytes} [Fri Jan 9 08:29:48 2026] POST /api/v1/wechat/callback?msg_signature=cdc12e2bef00f01d987d9ae321d300a1e5c36c12×tamp=1767918588&nonce=1768510076 => generated 1094 bytes in 457 msecs (HTTP/1.1 200) 2 headers in 81 bytes (1 switches on core 0) 2026-01-09 08:30:12 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 08:30:12 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: VYkwtbAIPnpprcyspau+o6woVT+BLSfa9WoVartvZtHggONJ20... 2026-01-09 08:30:12 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: b3867dab975a717dbadcc5bd891ea3c94a209572 2026-01-09 08:30:12 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: b3867dab975a717dbadcc5bd891ea3c94a209572 2026-01-09 08:30:12 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 08:30:12 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 08:30:12 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=event 2026-01-09 08:30:12 - gx_gp_monitor.wechat.callback_server - INFO - 处理事件消息: event=click, event_key=help_guide, user=WeiJueSen 2026-01-09 08:30:12 - gx_gp_monitor.wechat.message_handler - INFO - 处理事件: click, key: help_guide, user: WeiJueSen 2026-01-09 08:30:12 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 请求使用说明 {address space usage: 233619456 bytes/222MB} {rss usage: 38805504 bytes/37MB} [pid: 1777369|app: 0|req: 1/2] 183.47.98.227 () {36 vars in 678 bytes} [Fri Jan 9 08:30:12 2026] POST /api/v1/wechat/callback?msg_signature=b3867dab975a717dbadcc5bd891ea3c94a209572×tamp=1767918612&nonce=1768555491 => generated 2758 bytes in 7 msecs (HTTP/1.1 200) 2 headers in 81 bytes (1 switches on core 0) Fri Jan 9 08:30:51 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 08:30:51 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 08:30:51 2026 - gateway "uWSGI http 1" has been buried (pid: 1777371) Fri Jan 9 08:30:51 2026 - ...gracefully killing workers... Fri Jan 9 08:30:51 2026 - Gracefully killing worker 2 (pid: 1777369)... Fri Jan 9 08:30:51 2026 - Gracefully killing worker 1 (pid: 1777366)... Fri Jan 9 08:30:52 2026 - worker 1 buried after 1 seconds Fri Jan 9 08:30:52 2026 - worker 2 buried after 1 seconds Fri Jan 9 08:30:52 2026 - binary reloading uWSGI... Fri Jan 9 08:30:52 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:30:52 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 08:30:52 2026 - found fd 3 mapped to socket 0 (127.0.0.1:34359) Fri Jan 9 08:30:52 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 08:30:52 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 08:30:52 2026] *** Fri Jan 9 08:30:52 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 08:30:52 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 08:30:52 2026 - nodename: ubserver Fri Jan 9 08:30:52 2026 - machine: x86_64 Fri Jan 9 08:30:52 2026 - clock source: unix Fri Jan 9 08:30:52 2026 - pcre jit disabled Fri Jan 9 08:30:52 2026 - detected number of CPU cores: 12 Fri Jan 9 08:30:52 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:30:52 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 08:30:52 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:30:52 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:30:52 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:30:52 2026 - your processes number limit is 61306 Fri Jan 9 08:30:52 2026 - your memory page size is 4096 bytes Fri Jan 9 08:30:52 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 08:30:52 2026 - detected max file descriptor number: 1024 Fri Jan 9 08:30:52 2026 - lock engine: pthread robust mutexes Fri Jan 9 08:30:52 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 08:30:52 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 08:30:52 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:37271 (port auto-assigned) fd 4 Fri Jan 9 08:30:52 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:30:52 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:30:52 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 08:30:52 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 08:30:52 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 08:30:52 2026 - Python main interpreter initialized at 0x7c9573552d10 Fri Jan 9 08:30:52 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:30:52 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:30:52 2026 - python threads support enabled Fri Jan 9 08:30:52 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 08:30:52 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 08:30:52 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 08:30:52 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 08:30:52 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 08:30:52 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 08:30:52 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x7c9573552d10 pid: 1777323 (default app) Fri Jan 9 08:30:52 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:30:52 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:30:52 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 08:30:52 2026 - gracefully (RE)spawned uWSGI master process (pid: 1777323) Fri Jan 9 08:30:52 2026 - spawned uWSGI worker 1 (pid: 1778517, cores: 2) Fri Jan 9 08:30:52 2026 - spawned uWSGI worker 2 (pid: 1778519, cores: 2) Fri Jan 9 08:30:52 2026 - Python auto-reloader enabled Fri Jan 9 08:30:52 2026 - spawned uWSGI http 1 (pid: 1778521) Fri Jan 9 08:40:42 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 08:40:42 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 08:40:42 2026 - gateway "uWSGI http 1" has been buried (pid: 1778521) Fri Jan 9 08:40:42 2026 - ...gracefully killing workers... Fri Jan 9 08:40:42 2026 - Gracefully killing worker 2 (pid: 1778519)... Fri Jan 9 08:40:42 2026 - Gracefully killing worker 1 (pid: 1778517)... Fri Jan 9 08:40:43 2026 - worker 1 buried after 1 seconds Fri Jan 9 08:40:43 2026 - worker 2 buried after 1 seconds Fri Jan 9 08:40:43 2026 - binary reloading uWSGI... Fri Jan 9 08:40:43 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:40:43 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 08:40:43 2026 - found fd 4 mapped to socket 0 (127.0.0.1:37271) Fri Jan 9 08:40:43 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 08:40:43 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 08:40:43 2026] *** Fri Jan 9 08:40:43 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 08:40:43 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 08:40:43 2026 - nodename: ubserver Fri Jan 9 08:40:43 2026 - machine: x86_64 Fri Jan 9 08:40:43 2026 - clock source: unix Fri Jan 9 08:40:43 2026 - pcre jit disabled Fri Jan 9 08:40:43 2026 - detected number of CPU cores: 12 Fri Jan 9 08:40:43 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:40:43 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 08:40:43 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:40:43 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:40:43 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:40:43 2026 - your processes number limit is 61306 Fri Jan 9 08:40:43 2026 - your memory page size is 4096 bytes Fri Jan 9 08:40:43 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 08:40:43 2026 - detected max file descriptor number: 1024 Fri Jan 9 08:40:43 2026 - lock engine: pthread robust mutexes Fri Jan 9 08:40:43 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 08:40:43 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 08:40:43 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:45569 (port auto-assigned) fd 3 Fri Jan 9 08:40:43 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:40:43 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:40:43 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 08:40:43 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 08:40:43 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 08:40:43 2026 - Python main interpreter initialized at 0x7d49f5552d10 Fri Jan 9 08:40:43 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:40:43 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:40:43 2026 - python threads support enabled Fri Jan 9 08:40:43 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 08:40:43 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 08:40:43 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 08:40:43 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 08:40:43 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 08:40:43 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 08:40:43 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x7d49f5552d10 pid: 1777323 (default app) Fri Jan 9 08:40:43 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:40:43 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:40:43 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 08:40:43 2026 - gracefully (RE)spawned uWSGI master process (pid: 1777323) Fri Jan 9 08:40:43 2026 - spawned uWSGI worker 1 (pid: 1781557, cores: 2) Fri Jan 9 08:40:43 2026 - spawned uWSGI worker 2 (pid: 1781558, cores: 2) Fri Jan 9 08:40:43 2026 - spawned uWSGI http 1 (pid: 1781563) Fri Jan 9 08:40:43 2026 - Python auto-reloader enabled Fri Jan 9 08:42:17 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 08:42:17 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 08:42:17 2026 - gateway "uWSGI http 1" has been buried (pid: 1781563) Fri Jan 9 08:42:17 2026 - ...gracefully killing workers... Fri Jan 9 08:42:17 2026 - Gracefully killing worker 2 (pid: 1781558)... Fri Jan 9 08:42:17 2026 - Gracefully killing worker 1 (pid: 1781557)... Fri Jan 9 08:42:18 2026 - worker 1 buried after 1 seconds Fri Jan 9 08:42:18 2026 - worker 2 buried after 1 seconds Fri Jan 9 08:42:18 2026 - binary reloading uWSGI... Fri Jan 9 08:42:18 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:42:18 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 08:42:18 2026 - found fd 3 mapped to socket 0 (127.0.0.1:45569) Fri Jan 9 08:42:18 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 08:42:18 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 08:42:18 2026] *** Fri Jan 9 08:42:18 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 08:42:18 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 08:42:18 2026 - nodename: ubserver Fri Jan 9 08:42:18 2026 - machine: x86_64 Fri Jan 9 08:42:18 2026 - clock source: unix Fri Jan 9 08:42:18 2026 - pcre jit disabled Fri Jan 9 08:42:18 2026 - detected number of CPU cores: 12 Fri Jan 9 08:42:18 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:42:18 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 08:42:18 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:42:18 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:42:18 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:42:18 2026 - your processes number limit is 61306 Fri Jan 9 08:42:18 2026 - your memory page size is 4096 bytes Fri Jan 9 08:42:18 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 08:42:18 2026 - detected max file descriptor number: 1024 Fri Jan 9 08:42:18 2026 - lock engine: pthread robust mutexes Fri Jan 9 08:42:18 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 08:42:18 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 08:42:18 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:42537 (port auto-assigned) fd 4 Fri Jan 9 08:42:18 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:42:18 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:42:18 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 08:42:18 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 08:42:18 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 08:42:18 2026 - Python main interpreter initialized at 0x7186cfb52d10 Fri Jan 9 08:42:18 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:42:18 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:42:18 2026 - python threads support enabled Fri Jan 9 08:42:18 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 08:42:18 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 08:42:18 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 08:42:18 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 08:42:18 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 08:42:18 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 08:42:18 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x7186cfb52d10 pid: 1777323 (default app) Fri Jan 9 08:42:18 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:42:18 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:42:18 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 08:42:18 2026 - gracefully (RE)spawned uWSGI master process (pid: 1777323) Fri Jan 9 08:42:18 2026 - spawned uWSGI worker 1 (pid: 1782024, cores: 2) Fri Jan 9 08:42:18 2026 - spawned uWSGI worker 2 (pid: 1782025, cores: 2) Fri Jan 9 08:42:18 2026 - Python auto-reloader enabled Fri Jan 9 08:42:18 2026 - spawned uWSGI http 1 (pid: 1782028) Fri Jan 9 08:42:58 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 08:42:58 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 08:42:58 2026 - gateway "uWSGI http 1" has been buried (pid: 1782028) Fri Jan 9 08:42:58 2026 - ...gracefully killing workers... Fri Jan 9 08:42:58 2026 - Gracefully killing worker 1 (pid: 1782024)... Fri Jan 9 08:42:58 2026 - Gracefully killing worker 2 (pid: 1782025)... Fri Jan 9 08:42:59 2026 - worker 1 buried after 1 seconds Fri Jan 9 08:42:59 2026 - worker 2 buried after 1 seconds Fri Jan 9 08:42:59 2026 - binary reloading uWSGI... Fri Jan 9 08:42:59 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:42:59 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 08:42:59 2026 - found fd 4 mapped to socket 0 (127.0.0.1:42537) Fri Jan 9 08:42:59 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 08:42:59 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 08:42:59 2026] *** Fri Jan 9 08:42:59 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 08:42:59 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 08:42:59 2026 - nodename: ubserver Fri Jan 9 08:42:59 2026 - machine: x86_64 Fri Jan 9 08:42:59 2026 - clock source: unix Fri Jan 9 08:42:59 2026 - pcre jit disabled Fri Jan 9 08:42:59 2026 - detected number of CPU cores: 12 Fri Jan 9 08:42:59 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:42:59 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 08:42:59 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:42:59 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:42:59 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:42:59 2026 - your processes number limit is 61306 Fri Jan 9 08:42:59 2026 - your memory page size is 4096 bytes Fri Jan 9 08:42:59 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 08:42:59 2026 - detected max file descriptor number: 1024 Fri Jan 9 08:42:59 2026 - lock engine: pthread robust mutexes Fri Jan 9 08:42:59 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 08:42:59 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 08:42:59 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:35281 (port auto-assigned) fd 3 Fri Jan 9 08:42:59 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:42:59 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:42:59 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 08:42:59 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 08:42:59 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 08:42:59 2026 - Python main interpreter initialized at 0x70ee77f52d10 Fri Jan 9 08:42:59 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:42:59 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:42:59 2026 - python threads support enabled Fri Jan 9 08:42:59 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 08:42:59 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 08:42:59 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 08:42:59 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 08:43:00 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 08:43:00 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 08:43:00 2026 - WSGI app 0 (mountpoint='') ready in 1 seconds on interpreter 0x70ee77f52d10 pid: 1777323 (default app) Fri Jan 9 08:43:00 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:43:00 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:43:00 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 08:43:00 2026 - gracefully (RE)spawned uWSGI master process (pid: 1777323) Fri Jan 9 08:43:00 2026 - spawned uWSGI worker 1 (pid: 1782218, cores: 2) Fri Jan 9 08:43:00 2026 - spawned uWSGI worker 2 (pid: 1782221, cores: 2) Fri Jan 9 08:43:00 2026 - Python auto-reloader enabled Fri Jan 9 08:43:00 2026 - spawned uWSGI http 1 (pid: 1782222) Fri Jan 9 08:43:31 2026 - gateway "uWSGI http 1" has been buried (pid: 1782222) Fri Jan 9 08:43:31 2026 - ...brutally killing workers... Fri Jan 9 08:43:32 2026 - worker 1 buried after 1 seconds Fri Jan 9 08:43:32 2026 - worker 2 buried after 1 seconds Fri Jan 9 08:43:32 2026 - binary reloading uWSGI... Fri Jan 9 08:43:32 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:43:32 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 08:43:32 2026 - found fd 3 mapped to socket 0 (127.0.0.1:35281) Fri Jan 9 08:43:32 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 08:43:32 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 08:43:32 2026] *** Fri Jan 9 08:43:32 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 08:43:32 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 08:43:32 2026 - nodename: ubserver Fri Jan 9 08:43:32 2026 - machine: x86_64 Fri Jan 9 08:43:32 2026 - clock source: unix Fri Jan 9 08:43:32 2026 - pcre jit disabled Fri Jan 9 08:43:32 2026 - detected number of CPU cores: 12 Fri Jan 9 08:43:32 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:43:32 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 08:43:32 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:43:32 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:43:32 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:43:32 2026 - your processes number limit is 61306 Fri Jan 9 08:43:32 2026 - your memory page size is 4096 bytes Fri Jan 9 08:43:32 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 08:43:32 2026 - detected max file descriptor number: 1024 Fri Jan 9 08:43:32 2026 - lock engine: pthread robust mutexes Fri Jan 9 08:43:32 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 08:43:32 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 08:43:32 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:42161 (port auto-assigned) fd 4 Fri Jan 9 08:43:32 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:43:32 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:43:32 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 08:43:32 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 08:43:32 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 08:43:32 2026 - Python main interpreter initialized at 0x702810152d10 Fri Jan 9 08:43:32 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:43:32 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:43:32 2026 - python threads support enabled Fri Jan 9 08:43:32 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 08:43:32 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 08:43:32 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 08:43:32 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 08:43:32 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 08:43:32 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 08:43:32 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x702810152d10 pid: 1777323 (default app) Fri Jan 9 08:43:32 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:43:32 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:43:32 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 08:43:32 2026 - gracefully (RE)spawned uWSGI master process (pid: 1777323) Fri Jan 9 08:43:32 2026 - spawned uWSGI worker 1 (pid: 1782381, cores: 2) Fri Jan 9 08:43:32 2026 - spawned uWSGI worker 2 (pid: 1782384, cores: 2) Fri Jan 9 08:43:32 2026 - Python auto-reloader enabled Fri Jan 9 08:43:32 2026 - spawned uWSGI http 1 (pid: 1782387) Fri Jan 9 08:43:41 2026 - uWSGI worker 2 error: the master disconnected from this worker. Shutting down the worker. Fri Jan 9 08:43:41 2026 - uWSGI worker 2 error: the master disconnected from this worker. Shutting down the worker. Fri Jan 9 08:43:41 2026 - uWSGI worker 1 error: the master disconnected from this worker. Shutting down the worker. Fri Jan 9 08:43:41 2026 - uWSGI worker 1 error: the master disconnected from this worker. Shutting down the worker. Fri Jan 9 08:43:41 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 08:43:41 2026] *** Fri Jan 9 08:43:41 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 08:43:41 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 08:43:41 2026 - nodename: ubserver Fri Jan 9 08:43:41 2026 - machine: x86_64 Fri Jan 9 08:43:41 2026 - clock source: unix Fri Jan 9 08:43:41 2026 - pcre jit disabled Fri Jan 9 08:43:41 2026 - detected number of CPU cores: 12 Fri Jan 9 08:43:41 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:43:41 2026 - writing pidfile to ./uwsgi-wechat.pid Fri Jan 9 08:43:41 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 08:43:41 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:43:41 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:43:41 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 08:43:41 2026 - your processes number limit is 61306 Fri Jan 9 08:43:41 2026 - your memory page size is 4096 bytes Fri Jan 9 08:43:41 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 08:43:41 2026 - detected max file descriptor number: 1024 Fri Jan 9 08:43:41 2026 - lock engine: pthread robust mutexes Fri Jan 9 08:43:41 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 08:43:41 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 4 Fri Jan 9 08:43:41 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:46665 (port auto-assigned) fd 3 Fri Jan 9 08:43:41 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:43:41 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:43:41 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 08:43:41 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 08:43:41 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 08:43:41 2026 - Python main interpreter initialized at 0x741281352d10 Fri Jan 9 08:43:41 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:43:41 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:43:41 2026 - python threads support enabled Fri Jan 9 08:43:41 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 08:43:41 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 08:43:41 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 08:43:41 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 08:43:41 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 08:43:41 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 08:43:41 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x741281352d10 pid: 1782404 (default app) Fri Jan 9 08:43:41 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 08:43:41 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 08:43:41 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 08:43:41 2026 - spawned uWSGI master process (pid: 1782404) Fri Jan 9 08:43:41 2026 - spawned uWSGI worker 1 (pid: 1782423, cores: 2) Fri Jan 9 08:43:41 2026 - spawned uWSGI worker 2 (pid: 1782424, cores: 2) Fri Jan 9 08:43:41 2026 - spawned uWSGI http 1 (pid: 1782428) Fri Jan 9 08:43:41 2026 - Python auto-reloader enabled 2026-01-09 09:13:20 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 09:13:20 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: S85Mv12UhBqhnCoEyCf2GdrP0uHiDB61RmzIcmMqk5vRLfhDC7... 2026-01-09 09:13:20 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 05a3dac6f360b335ba50de40004324f8668f476b 2026-01-09 09:13:20 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 05a3dac6f360b335ba50de40004324f8668f476b 2026-01-09 09:13:20 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 09:13:20 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 09:13:20 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=text 2026-01-09 09:13:20 - gx_gp_monitor.wechat.callback_server - INFO - 处理文本消息: content=马山..., user=WeiJueSen 2026-01-09 09:13:20 - gx_gp_monitor.wechat.message_handler - INFO - 处理文本消息: 马山, user: WeiJueSen 2026-01-09 09:13:20 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 关键词搜索: ['马山'] 2026-01-09 09:13:20 - gx_gp_monitor.main - INFO - === 广西政府采购网公告监控系统启动 === 2026-01-09 09:13:20 - gx_gp_monitor.main - INFO - 版本: 1.0.0 2026-01-09 09:13:20 - gx_gp_monitor.main - INFO - 配置文件: 默认配置 2026-01-09 09:13:20 - gx_gp_monitor.core.reliability - INFO - 健康检查通过 2026-01-09 09:13:20 - gx_gp_monitor.core.database - INFO - 数据库连接池初始化成功 2026-01-09 09:13:20 - gx_gp_monitor.core.database - INFO - 开始初始化数据库表结构 2026-01-09 09:13:20 - gx_gp_monitor.core.database - INFO - 数据库表结构初始化完成 2026-01-09 09:13:20 - gx_gp_monitor.storage.postgresql - INFO - 存储初始化完成 2026-01-09 09:13:20 - gx_gp_monitor.main - INFO - 应用初始化完成 2026-01-09 09:13:20 - gx_gp_monitor.main - INFO - 开始执行搜索任务 (手动搜索: True) 2026-01-09 09:13:20 - gx_gp_monitor.crawler.spider - INFO - 开始爬取 13 个公告来源 2026-01-09 09:13:20 - gx_gp_monitor - INFO - 开始爬取 采购公告 2026-01-09 09:13:25 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 09:13:25 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: S85Mv12UhBqhnCoEyCf2GdrP0uHiDB61RmzIcmMqk5vRLfhDC7... 2026-01-09 09:13:25 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 05a3dac6f360b335ba50de40004324f8668f476b 2026-01-09 09:13:25 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 05a3dac6f360b335ba50de40004324f8668f476b 2026-01-09 09:13:25 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 09:13:25 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 09:13:25 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=text 2026-01-09 09:13:25 - gx_gp_monitor.wechat.callback_server - INFO - 处理文本消息: content=马山..., user=WeiJueSen 2026-01-09 09:13:25 - gx_gp_monitor.wechat.message_handler - INFO - 处理文本消息: 马山, user: WeiJueSen 2026-01-09 09:13:25 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 关键词搜索: ['马山'] 2026-01-09 09:13:25 - gx_gp_monitor.main - INFO - 开始执行搜索任务 (手动搜索: True) 2026-01-09 09:13:25 - gx_gp_monitor.crawler.spider - INFO - 开始爬取 13 个公告来源 2026-01-09 09:13:25 - gx_gp_monitor - INFO - 开始爬取 采购公告 2026-01-09 09:13:30 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 09:13:30 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: S85Mv12UhBqhnCoEyCf2GdrP0uHiDB61RmzIcmMqk5vRLfhDC7... 2026-01-09 09:13:30 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 05a3dac6f360b335ba50de40004324f8668f476b 2026-01-09 09:13:30 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 05a3dac6f360b335ba50de40004324f8668f476b 2026-01-09 09:13:30 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 09:13:30 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 09:13:30 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=text 2026-01-09 09:13:30 - gx_gp_monitor.wechat.callback_server - INFO - 处理文本消息: content=马山..., user=WeiJueSen 2026-01-09 09:13:30 - gx_gp_monitor.wechat.message_handler - INFO - 处理文本消息: 马山, user: WeiJueSen 2026-01-09 09:13:30 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 关键词搜索: ['马山'] 2026-01-09 09:13:30 - gx_gp_monitor.main - INFO - === 广西政府采购网公告监控系统启动 === 2026-01-09 09:13:30 - gx_gp_monitor.main - INFO - 版本: 1.0.0 2026-01-09 09:13:30 - gx_gp_monitor.main - INFO - 配置文件: 默认配置 2026-01-09 09:13:30 - gx_gp_monitor.core.reliability - INFO - 健康检查通过 2026-01-09 09:13:30 - gx_gp_monitor.core.database - INFO - 数据库连接池初始化成功 2026-01-09 09:13:30 - gx_gp_monitor.core.database - INFO - 开始初始化数据库表结构 2026-01-09 09:13:30 - gx_gp_monitor.core.database - INFO - 数据库表结构初始化完成 2026-01-09 09:13:30 - gx_gp_monitor.storage.postgresql - INFO - 存储初始化完成 2026-01-09 09:13:30 - gx_gp_monitor.main - INFO - 应用初始化完成 2026-01-09 09:13:30 - gx_gp_monitor.main - INFO - 开始执行搜索任务 (手动搜索: True) 2026-01-09 09:13:30 - gx_gp_monitor.crawler.spider - INFO - 开始爬取 13 个公告来源 2026-01-09 09:13:30 - gx_gp_monitor - INFO - 开始爬取 采购公告 2026-01-09 09:13:49 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 09:13:49 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: cRRv0gPY6is3KD1jEwXBytUOrRdzu3Db4yWqdjO1eZIZ1lAL+k... 2026-01-09 09:13:49 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: e022be893dc3976c41438b805a0559df33dbded5 2026-01-09 09:13:49 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: e022be893dc3976c41438b805a0559df33dbded5 2026-01-09 09:13:49 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 09:13:49 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 09:13:49 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=event 2026-01-09 09:13:49 - gx_gp_monitor.wechat.callback_server - INFO - 处理事件消息: event=click, event_key=system_status, user=WeiJueSen 2026-01-09 09:13:49 - gx_gp_monitor.wechat.message_handler - INFO - 处理事件: click, key: system_status, user: WeiJueSen 2026-01-09 09:13:49 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 请求系统状态 2026-01-09 09:13:49 - gx_gp_monitor.core.database - INFO - 开始初始化数据库表结构 2026-01-09 09:13:49 - gx_gp_monitor.core.database - INFO - 数据库表结构初始化完成 2026-01-09 09:13:49 - gx_gp_monitor.notification.wechat - INFO - 企业微信服务初始化完成 2026-01-09 09:13:49 - gx_gp_monitor.notification.wechat - INFO - 成功获取企业微信访问令牌 {address space usage: 247619584 bytes/236MB} {rss usage: 60739584 bytes/57MB} [pid: 1782423|app: 0|req: 2/1] 14.116.241.251 () {36 vars in 679 bytes} [Fri Jan 9 09:13:49 2026] POST /api/v1/wechat/callback?msg_signature=e022be893dc3976c41438b805a0559df33dbded5×tamp=1767921229&nonce=1768316751 => generated 798 bytes in 250 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 1) 2026-01-09 09:13:50 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:13:50 - gx_gp_monitor - INFO - 采购公告 爬取完成,共获取 100 条公告,耗时 30.49秒 2026-01-09 09:13:50 - gx_gp_monitor - INFO - 开始爬取 结果公告 2026-01-09 09:13:51 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:13:51 - gx_gp_monitor - INFO - 结果公告 爬取完成,共获取 100 条公告,耗时 0.21秒 2026-01-09 09:13:51 - gx_gp_monitor - INFO - 开始爬取 合同公告 2026-01-09 09:13:51 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:13:51 - gx_gp_monitor - INFO - 合同公告 爬取完成,共获取 100 条公告,耗时 0.24秒 2026-01-09 09:13:51 - gx_gp_monitor - INFO - 开始爬取 更正公告 2026-01-09 09:13:51 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:13:51 - gx_gp_monitor - INFO - 更正公告 爬取完成,共获取 100 条公告,耗时 0.23秒 2026-01-09 09:13:51 - gx_gp_monitor - INFO - 开始爬取 招标文件预公示 2026-01-09 09:13:51 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:13:51 - gx_gp_monitor - INFO - 招标文件预公示 爬取完成,共获取 100 条公告,耗时 0.21秒 2026-01-09 09:13:51 - gx_gp_monitor - INFO - 开始爬取 单一来源公示 2026-01-09 09:13:51 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:13:51 - gx_gp_monitor - INFO - 单一来源公示 爬取完成,共获取 100 条公告,耗时 0.17秒 2026-01-09 09:13:51 - gx_gp_monitor - INFO - 开始爬取 电子卖场公示 2026-01-09 09:13:52 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:13:52 - gx_gp_monitor - INFO - 电子卖场公示 爬取完成,共获取 100 条公告,耗时 0.36秒 2026-01-09 09:13:52 - gx_gp_monitor - INFO - 开始爬取 履约验收公示 2026-01-09 09:13:52 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:13:52 - gx_gp_monitor - INFO - 履约验收公示 爬取完成,共获取 100 条公告,耗时 0.22秒 2026-01-09 09:13:52 - gx_gp_monitor - INFO - 开始爬取 工程类公告 2026-01-09 09:13:52 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:13:52 - gx_gp_monitor - INFO - 工程类公告 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 09:13:52 - gx_gp_monitor - INFO - 开始爬取 框架协议征集公告 2026-01-09 09:13:52 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:13:52 - gx_gp_monitor - INFO - 框架协议征集公告 爬取完成,共获取 100 条公告,耗时 0.24秒 2026-01-09 09:13:52 - gx_gp_monitor - INFO - 开始爬取 框架协议入围结果公告 2026-01-09 09:13:53 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:13:53 - gx_gp_monitor - INFO - 框架协议入围结果公告 爬取完成,共获取 100 条公告,耗时 0.23秒 2026-01-09 09:13:53 - gx_gp_monitor - INFO - 开始爬取 框架协议成交结果汇总公告 2026-01-09 09:13:53 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:13:53 - gx_gp_monitor - INFO - 框架协议成交结果汇总公告 爬取完成,共获取 100 条公告,耗时 0.15秒 2026-01-09 09:13:53 - gx_gp_monitor - INFO - 开始爬取 采购意向公开 2026-01-09 09:13:53 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:13:53 - gx_gp_monitor - INFO - 采购意向公开 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 09:13:53 - gx_gp_monitor.crawler.spider - INFO - 爬取完成: 共处理 13 个来源,成功 13 个,失败 0 个,获取 1300 条公告 2026-01-09 09:13:53 - gx_gp_monitor.main - INFO - 搜索到 1300 条原始公告 2026-01-09 09:13:53 - gx_gp_monitor.main - INFO - 手动搜索模式:跳过数据库保存 2026-01-09 09:13:53 - gx_gp_monitor.filters.filters - INFO - 日期筛选: 1300 -> 63 条公告 2026-01-09 09:13:53 - gx_gp_monitor.filters.filters - INFO - 关键词筛选: 63 -> 0 条公告 2026-01-09 09:13:53 - gx_gp_monitor.filters.filters - INFO - 来源筛选: 0 -> 0 条公告 2026-01-09 09:13:53 - gx_gp_monitor.main - INFO - 筛选后剩余 0 条公告 2026-01-09 09:13:53 - gx_gp_monitor.main - INFO - 手动爬取模式:跳过筛选后公告的数据库保存 2026-01-09 09:13:53 - gx_gp_monitor.main - INFO - 爬取任务完成: {'success': True, 'total_crawled': 1300, 'filtered': 0, 'saved': 0, 'markdown_generated': False, 'notification_sent': False, 'filter_stats': {'keyword_filtered': 63, 'date_filtered': 1237, 'duplicate_filtered': 0, 'source_filtered': 0}, 'filtered_announcements': []} {address space usage: 254005248 bytes/242MB} {rss usage: 71413760 bytes/68MB} [pid: 1782424|app: 0|req: 2/2] 113.108.92.100 () {36 vars in 678 bytes} [Fri Jan 9 09:13:20 2026] POST /api/v1/wechat/callback?msg_signature=05a3dac6f360b335ba50de40004324f8668f476b×tamp=1767921199&nonce=1768905689 => generated 798 bytes in 33402 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 0) 2026-01-09 09:13:55 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:13:55 - gx_gp_monitor - INFO - 采购公告 爬取完成,共获取 100 条公告,耗时 30.38秒 2026-01-09 09:13:55 - gx_gp_monitor - INFO - 开始爬取 结果公告 2026-01-09 09:13:55 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:13:55 - gx_gp_monitor - INFO - 结果公告 爬取完成,共获取 100 条公告,耗时 0.21秒 2026-01-09 09:13:55 - gx_gp_monitor - INFO - 开始爬取 合同公告 2026-01-09 09:13:55 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:13:55 - gx_gp_monitor - INFO - 合同公告 爬取完成,共获取 100 条公告,耗时 0.23秒 2026-01-09 09:13:55 - gx_gp_monitor - INFO - 开始爬取 更正公告 2026-01-09 09:13:56 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:13:56 - gx_gp_monitor - INFO - 更正公告 爬取完成,共获取 100 条公告,耗时 0.17秒 2026-01-09 09:13:56 - gx_gp_monitor - INFO - 开始爬取 招标文件预公示 2026-01-09 09:13:56 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:13:56 - gx_gp_monitor - INFO - 招标文件预公示 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 09:13:56 - gx_gp_monitor - INFO - 开始爬取 单一来源公示 2026-01-09 09:13:56 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:13:56 - gx_gp_monitor - INFO - 单一来源公示 爬取完成,共获取 100 条公告,耗时 0.21秒 2026-01-09 09:13:56 - gx_gp_monitor - INFO - 开始爬取 电子卖场公示 2026-01-09 09:13:56 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:13:56 - gx_gp_monitor - INFO - 电子卖场公示 爬取完成,共获取 100 条公告,耗时 0.35秒 2026-01-09 09:13:56 - gx_gp_monitor - INFO - 开始爬取 履约验收公示 2026-01-09 09:13:56 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:13:56 - gx_gp_monitor - INFO - 履约验收公示 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 09:13:56 - gx_gp_monitor - INFO - 开始爬取 工程类公告 2026-01-09 09:13:57 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:13:57 - gx_gp_monitor - INFO - 工程类公告 爬取完成,共获取 100 条公告,耗时 0.16秒 2026-01-09 09:13:57 - gx_gp_monitor - INFO - 开始爬取 框架协议征集公告 2026-01-09 09:13:57 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:13:57 - gx_gp_monitor - INFO - 框架协议征集公告 爬取完成,共获取 100 条公告,耗时 0.17秒 2026-01-09 09:13:57 - gx_gp_monitor - INFO - 开始爬取 框架协议入围结果公告 2026-01-09 09:13:57 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:13:57 - gx_gp_monitor - INFO - 框架协议入围结果公告 爬取完成,共获取 100 条公告,耗时 0.27秒 2026-01-09 09:13:57 - gx_gp_monitor - INFO - 开始爬取 框架协议成交结果汇总公告 2026-01-09 09:13:57 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:13:57 - gx_gp_monitor - INFO - 框架协议成交结果汇总公告 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 09:13:57 - gx_gp_monitor - INFO - 开始爬取 采购意向公开 2026-01-09 09:13:57 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:13:57 - gx_gp_monitor - INFO - 采购意向公开 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 09:13:57 - gx_gp_monitor.crawler.spider - INFO - 爬取完成: 共处理 13 个来源,成功 13 个,失败 0 个,获取 1300 条公告 2026-01-09 09:13:57 - gx_gp_monitor.main - INFO - 搜索到 1300 条原始公告 2026-01-09 09:13:57 - gx_gp_monitor.main - INFO - 手动搜索模式:跳过数据库保存 2026-01-09 09:13:57 - gx_gp_monitor.filters.filters - INFO - 日期筛选: 1300 -> 63 条公告 2026-01-09 09:13:57 - gx_gp_monitor.filters.filters - INFO - 关键词筛选: 63 -> 0 条公告 2026-01-09 09:13:57 - gx_gp_monitor.filters.filters - INFO - 来源筛选: 0 -> 0 条公告 2026-01-09 09:13:57 - gx_gp_monitor.main - INFO - 筛选后剩余 0 条公告 2026-01-09 09:13:57 - gx_gp_monitor.main - INFO - 手动爬取模式:跳过筛选后公告的数据库保存 2026-01-09 09:13:57 - gx_gp_monitor.main - INFO - 爬取任务完成: {'success': True, 'total_crawled': 1300, 'filtered': 0, 'saved': 0, 'markdown_generated': False, 'notification_sent': False, 'filter_stats': {'keyword_filtered': 63, 'date_filtered': 1237, 'duplicate_filtered': 0, 'source_filtered': 0}, 'filtered_announcements': []} {address space usage: 243519488 bytes/232MB} {rss usage: 61194240 bytes/58MB} [pid: 1782424|app: 0|req: 2/3] 106.55.202.215 () {36 vars in 679 bytes} [Fri Jan 9 09:13:25 2026] POST /api/v1/wechat/callback?msg_signature=05a3dac6f360b335ba50de40004324f8668f476b×tamp=1767921199&nonce=1768905689 => generated 798 bytes in 32920 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 1) 2026-01-09 09:14:00 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:00 - gx_gp_monitor - INFO - 采购公告 爬取完成,共获取 100 条公告,耗时 30.40秒 2026-01-09 09:14:00 - gx_gp_monitor - INFO - 开始爬取 结果公告 2026-01-09 09:14:00 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:00 - gx_gp_monitor - INFO - 结果公告 爬取完成,共获取 100 条公告,耗时 0.21秒 2026-01-09 09:14:00 - gx_gp_monitor - INFO - 开始爬取 合同公告 2026-01-09 09:14:01 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:01 - gx_gp_monitor - INFO - 合同公告 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 09:14:01 - gx_gp_monitor - INFO - 开始爬取 更正公告 2026-01-09 09:14:01 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:01 - gx_gp_monitor - INFO - 更正公告 爬取完成,共获取 100 条公告,耗时 0.27秒 2026-01-09 09:14:01 - gx_gp_monitor - INFO - 开始爬取 招标文件预公示 2026-01-09 09:14:01 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:01 - gx_gp_monitor - INFO - 招标文件预公示 爬取完成,共获取 100 条公告,耗时 0.30秒 2026-01-09 09:14:01 - gx_gp_monitor - INFO - 开始爬取 单一来源公示 2026-01-09 09:14:01 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:01 - gx_gp_monitor - INFO - 单一来源公示 爬取完成,共获取 100 条公告,耗时 0.23秒 2026-01-09 09:14:01 - gx_gp_monitor - INFO - 开始爬取 电子卖场公示 2026-01-09 09:14:02 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:02 - gx_gp_monitor - INFO - 电子卖场公示 爬取完成,共获取 100 条公告,耗时 0.37秒 2026-01-09 09:14:02 - gx_gp_monitor - INFO - 开始爬取 履约验收公示 2026-01-09 09:14:02 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:02 - gx_gp_monitor - INFO - 履约验收公示 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 09:14:02 - gx_gp_monitor - INFO - 开始爬取 工程类公告 2026-01-09 09:14:02 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:02 - gx_gp_monitor - INFO - 工程类公告 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 09:14:02 - gx_gp_monitor - INFO - 开始爬取 框架协议征集公告 2026-01-09 09:14:02 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:02 - gx_gp_monitor - INFO - 框架协议征集公告 爬取完成,共获取 100 条公告,耗时 0.17秒 2026-01-09 09:14:02 - gx_gp_monitor - INFO - 开始爬取 框架协议入围结果公告 2026-01-09 09:14:02 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:02 - gx_gp_monitor - INFO - 框架协议入围结果公告 爬取完成,共获取 100 条公告,耗时 0.16秒 2026-01-09 09:14:02 - gx_gp_monitor - INFO - 开始爬取 框架协议成交结果汇总公告 2026-01-09 09:14:03 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:03 - gx_gp_monitor - INFO - 框架协议成交结果汇总公告 爬取完成,共获取 100 条公告,耗时 0.14秒 2026-01-09 09:14:03 - gx_gp_monitor - INFO - 开始爬取 采购意向公开 2026-01-09 09:14:03 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:03 - gx_gp_monitor - INFO - 采购意向公开 爬取完成,共获取 100 条公告,耗时 0.17秒 2026-01-09 09:14:03 - gx_gp_monitor.crawler.spider - INFO - 爬取完成: 共处理 13 个来源,成功 13 个,失败 0 个,获取 1300 条公告 2026-01-09 09:14:03 - gx_gp_monitor.main - INFO - 搜索到 1300 条原始公告 2026-01-09 09:14:03 - gx_gp_monitor.main - INFO - 手动搜索模式:跳过数据库保存 2026-01-09 09:14:03 - gx_gp_monitor.filters.filters - INFO - 日期筛选: 1300 -> 63 条公告 2026-01-09 09:14:03 - gx_gp_monitor.filters.filters - INFO - 关键词筛选: 63 -> 0 条公告 2026-01-09 09:14:03 - gx_gp_monitor.filters.filters - INFO - 来源筛选: 0 -> 0 条公告 2026-01-09 09:14:03 - gx_gp_monitor.main - INFO - 筛选后剩余 0 条公告 2026-01-09 09:14:03 - gx_gp_monitor.main - INFO - 手动爬取模式:跳过筛选后公告的数据库保存 2026-01-09 09:14:03 - gx_gp_monitor.main - INFO - 爬取任务完成: {'success': True, 'total_crawled': 1300, 'filtered': 0, 'saved': 0, 'markdown_generated': False, 'notification_sent': False, 'filter_stats': {'keyword_filtered': 63, 'date_filtered': 1237, 'duplicate_filtered': 0, 'source_filtered': 0}, 'filtered_announcements': []} {address space usage: 241307648 bytes/230MB} {rss usage: 54820864 bytes/52MB} [pid: 1782423|app: 0|req: 2/4] 106.55.227.187 () {36 vars in 679 bytes} [Fri Jan 9 09:13:30 2026] POST /api/v1/wechat/callback?msg_signature=05a3dac6f360b335ba50de40004324f8668f476b×tamp=1767921199&nonce=1768905689 => generated 798 bytes in 33207 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 0) 2026-01-09 09:14:09 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 09:14:09 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: gyx7vxH2zqMjazNfk20XsqoWAPeraaE5WmiJ8W2KXSNI9Nm0eA... 2026-01-09 09:14:09 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 2f7b8f2f76bd50a36fbd191142f5ff1e3803157e 2026-01-09 09:14:09 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 2f7b8f2f76bd50a36fbd191142f5ff1e3803157e 2026-01-09 09:14:09 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 09:14:09 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 09:14:09 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=event 2026-01-09 09:14:09 - gx_gp_monitor.wechat.callback_server - INFO - 处理事件消息: event=click, event_key=keyword_search, user=WeiJueSen 2026-01-09 09:14:09 - gx_gp_monitor.wechat.message_handler - INFO - 处理事件: click, key: keyword_search, user: WeiJueSen 2026-01-09 09:14:09 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 触发关键词搜索菜单 {address space usage: 243519488 bytes/232MB} {rss usage: 61194240 bytes/58MB} [pid: 1782424|app: 0|req: 3/5] 183.47.117.101 () {36 vars in 679 bytes} [Fri Jan 9 09:14:09 2026] POST /api/v1/wechat/callback?msg_signature=2f7b8f2f76bd50a36fbd191142f5ff1e3803157e×tamp=1767921249&nonce=1767999424 => generated 1054 bytes in 0 msecs (HTTP/1.1 200) 2 headers in 81 bytes (1 switches on core 0) 2026-01-09 09:14:17 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 09:14:17 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: mysaThIKeH57rqN/s+0oiaicH1gDxV8MkDM2SIOVR4luy0quyh... 2026-01-09 09:14:17 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 204c42bde1a4e8aad7b3d4f5b2ef8c3145b538fa 2026-01-09 09:14:17 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 204c42bde1a4e8aad7b3d4f5b2ef8c3145b538fa 2026-01-09 09:14:17 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 09:14:17 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 09:14:17 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=text 2026-01-09 09:14:17 - gx_gp_monitor.wechat.callback_server - INFO - 处理文本消息: content=马山..., user=WeiJueSen 2026-01-09 09:14:17 - gx_gp_monitor.wechat.message_handler - INFO - 处理文本消息: 马山, user: WeiJueSen 2026-01-09 09:14:17 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 关键词搜索: ['马山'] 2026-01-09 09:14:17 - gx_gp_monitor.main - INFO - 开始执行搜索任务 (手动搜索: True) 2026-01-09 09:14:17 - gx_gp_monitor.crawler.spider - INFO - 开始爬取 13 个公告来源 2026-01-09 09:14:17 - gx_gp_monitor - INFO - 开始爬取 采购公告 2026-01-09 09:14:22 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 09:14:22 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: mysaThIKeH57rqN/s+0oiaicH1gDxV8MkDM2SIOVR4luy0quyh... 2026-01-09 09:14:22 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 204c42bde1a4e8aad7b3d4f5b2ef8c3145b538fa 2026-01-09 09:14:22 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 204c42bde1a4e8aad7b3d4f5b2ef8c3145b538fa 2026-01-09 09:14:22 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 09:14:22 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 09:14:22 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=text 2026-01-09 09:14:22 - gx_gp_monitor.wechat.callback_server - INFO - 处理文本消息: content=马山..., user=WeiJueSen 2026-01-09 09:14:22 - gx_gp_monitor.wechat.message_handler - INFO - 处理文本消息: 马山, user: WeiJueSen 2026-01-09 09:14:22 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 关键词搜索: ['马山'] 2026-01-09 09:14:22 - gx_gp_monitor.main - INFO - 开始执行搜索任务 (手动搜索: True) 2026-01-09 09:14:22 - gx_gp_monitor.crawler.spider - INFO - 开始爬取 13 个公告来源 2026-01-09 09:14:22 - gx_gp_monitor - INFO - 开始爬取 采购公告 2026-01-09 09:14:27 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 09:14:27 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: mp1j++4grFMsPYo7YXgXOf1C52HWtxx6qWCHvAyMy1HL8SBUqf... 2026-01-09 09:14:27 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 501bf3b1b00e3662707a0775828f2eb273c49efe 2026-01-09 09:14:27 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 501bf3b1b00e3662707a0775828f2eb273c49efe 2026-01-09 09:14:27 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 09:14:27 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 09:14:27 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=event 2026-01-09 09:14:27 - gx_gp_monitor.wechat.callback_server - INFO - 处理事件消息: event=click, event_key=crawl_now, user=WeiJueSen 2026-01-09 09:14:27 - gx_gp_monitor.wechat.message_handler - INFO - 处理事件: click, key: crawl_now, user: WeiJueSen 2026-01-09 09:14:27 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 触发立即搜索 2026-01-09 09:14:27 - gx_gp_monitor.main - INFO - 开始执行搜索任务 (手动搜索: False) 2026-01-09 09:14:27 - gx_gp_monitor.crawler.spider - INFO - 开始爬取 13 个公告来源 2026-01-09 09:14:27 - gx_gp_monitor - INFO - 开始爬取 采购公告 2026-01-09 09:14:27 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 09:14:27 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: mysaThIKeH57rqN/s+0oiaicH1gDxV8MkDM2SIOVR4luy0quyh... 2026-01-09 09:14:27 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 204c42bde1a4e8aad7b3d4f5b2ef8c3145b538fa 2026-01-09 09:14:27 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 204c42bde1a4e8aad7b3d4f5b2ef8c3145b538fa 2026-01-09 09:14:27 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 09:14:27 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 09:14:27 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=text 2026-01-09 09:14:27 - gx_gp_monitor.wechat.callback_server - INFO - 处理文本消息: content=马山..., user=WeiJueSen 2026-01-09 09:14:27 - gx_gp_monitor.wechat.message_handler - INFO - 处理文本消息: 马山, user: WeiJueSen 2026-01-09 09:14:27 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 关键词搜索: ['马山'] 2026-01-09 09:14:27 - gx_gp_monitor.main - INFO - 开始执行搜索任务 (手动搜索: True) 2026-01-09 09:14:27 - gx_gp_monitor.crawler.spider - INFO - 开始爬取 13 个公告来源 2026-01-09 09:14:27 - gx_gp_monitor - INFO - 开始爬取 采购公告 2026-01-09 09:14:27 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:27 - gx_gp_monitor - INFO - 采购公告 爬取完成,共获取 100 条公告,耗时 0.40秒 2026-01-09 09:14:27 - gx_gp_monitor - INFO - 开始爬取 结果公告 2026-01-09 09:14:27 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:27 - gx_gp_monitor - INFO - 结果公告 爬取完成,共获取 100 条公告,耗时 0.22秒 2026-01-09 09:14:27 - gx_gp_monitor - INFO - 开始爬取 合同公告 2026-01-09 09:14:28 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:28 - gx_gp_monitor - INFO - 合同公告 爬取完成,共获取 100 条公告,耗时 0.22秒 2026-01-09 09:14:28 - gx_gp_monitor - INFO - 开始爬取 更正公告 2026-01-09 09:14:28 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:28 - gx_gp_monitor - INFO - 更正公告 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 09:14:28 - gx_gp_monitor - INFO - 开始爬取 招标文件预公示 2026-01-09 09:14:28 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:28 - gx_gp_monitor - INFO - 招标文件预公示 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 09:14:28 - gx_gp_monitor - INFO - 开始爬取 单一来源公示 2026-01-09 09:14:28 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:28 - gx_gp_monitor - INFO - 单一来源公示 爬取完成,共获取 100 条公告,耗时 0.21秒 2026-01-09 09:14:28 - gx_gp_monitor - INFO - 开始爬取 电子卖场公示 2026-01-09 09:14:28 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:28 - gx_gp_monitor - INFO - 电子卖场公示 爬取完成,共获取 100 条公告,耗时 0.35秒 2026-01-09 09:14:28 - gx_gp_monitor - INFO - 开始爬取 履约验收公示 2026-01-09 09:14:29 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:29 - gx_gp_monitor - INFO - 履约验收公示 爬取完成,共获取 100 条公告,耗时 0.17秒 2026-01-09 09:14:29 - gx_gp_monitor - INFO - 开始爬取 工程类公告 2026-01-09 09:14:29 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:29 - gx_gp_monitor - INFO - 工程类公告 爬取完成,共获取 100 条公告,耗时 0.17秒 2026-01-09 09:14:29 - gx_gp_monitor - INFO - 开始爬取 框架协议征集公告 2026-01-09 09:14:29 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:29 - gx_gp_monitor - INFO - 框架协议征集公告 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 09:14:29 - gx_gp_monitor - INFO - 开始爬取 框架协议入围结果公告 2026-01-09 09:14:29 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:29 - gx_gp_monitor - INFO - 框架协议入围结果公告 爬取完成,共获取 100 条公告,耗时 0.27秒 2026-01-09 09:14:29 - gx_gp_monitor - INFO - 开始爬取 框架协议成交结果汇总公告 2026-01-09 09:14:29 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:29 - gx_gp_monitor - INFO - 框架协议成交结果汇总公告 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 09:14:29 - gx_gp_monitor - INFO - 开始爬取 采购意向公开 2026-01-09 09:14:30 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:30 - gx_gp_monitor - INFO - 采购意向公开 爬取完成,共获取 100 条公告,耗时 0.22秒 2026-01-09 09:14:30 - gx_gp_monitor.crawler.spider - INFO - 爬取完成: 共处理 13 个来源,成功 13 个,失败 0 个,获取 1300 条公告 2026-01-09 09:14:30 - gx_gp_monitor.main - INFO - 搜索到 1300 条原始公告 2026-01-09 09:14:30 - gx_gp_monitor.storage.postgresql - INFO - 开始按来源保存 1300 条公告,每个来源最多保留 100 条 2026-01-09 09:14:30 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-09 09:14:30 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement1 保存了 0 条公告 2026-01-09 09:14:30 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-09 09:14:30 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement2 保存了 0 条公告 2026-01-09 09:14:30 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-09 09:14:30 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement3 保存了 0 条公告 2026-01-09 09:14:30 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-09 09:14:30 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement4 保存了 0 条公告 2026-01-09 09:14:30 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-09 09:14:30 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement5 保存了 0 条公告 2026-01-09 09:14:30 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-09 09:14:30 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement6 保存了 0 条公告 2026-01-09 09:14:30 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-09 09:14:30 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement7 保存了 0 条公告 2026-01-09 09:14:30 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-09 09:14:30 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement10 保存了 0 条公告 2026-01-09 09:14:30 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-09 09:14:30 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement11 保存了 0 条公告 2026-01-09 09:14:30 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-09 09:14:30 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement20 保存了 0 条公告 2026-01-09 09:14:30 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-09 09:14:30 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement21 保存了 0 条公告 2026-01-09 09:14:30 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-09 09:14:30 - gx_gp_monitor.storage.postgresql - INFO - 来源 ZcyAnnouncement23 保存了 0 条公告 2026-01-09 09:14:30 - gx_gp_monitor.core.database - INFO - 批量保存公告完成,成功保存 0 条 2026-01-09 09:14:30 - gx_gp_monitor.storage.postgresql - INFO - 来源 61-266648 保存了 0 条公告 2026-01-09 09:14:30 - gx_gp_monitor.storage.postgresql - INFO - 按来源保存完成,总计保存 0 条公告 2026-01-09 09:14:30 - gx_gp_monitor.main - INFO - 保存所有公告完成:共保存 0 条,按来源统计: {'ZcyAnnouncement1': 0, 'ZcyAnnouncement2': 0, 'ZcyAnnouncement3': 0, 'ZcyAnnouncement4': 0, 'ZcyAnnouncement5': 0, 'ZcyAnnouncement6': 0, 'ZcyAnnouncement7': 0, 'ZcyAnnouncement10': 0, 'ZcyAnnouncement11': 0, 'ZcyAnnouncement20': 0, 'ZcyAnnouncement21': 0, 'ZcyAnnouncement23': 0, '61-266648': 0} 2026-01-09 09:14:30 - gx_gp_monitor.main - INFO - 筛选出 1300 条新公告 2026-01-09 09:14:30 - gx_gp_monitor.filters.filters - INFO - 来源筛选: 1300 -> 1300 条公告 2026-01-09 09:14:30 - gx_gp_monitor.filters.filters - INFO - 去重筛选: 移除了 1300 条重复公告 2026-01-09 09:14:30 - gx_gp_monitor.filters.filters - INFO - 关键词筛选: 0 -> 0 条公告 2026-01-09 09:14:30 - gx_gp_monitor.filters.filters - INFO - 筛选完成: 总数 1300 -> 筛选后 0 (关键词: 0, 日期: 0, 去重: 1300, 来源: 0) 2026-01-09 09:14:30 - gx_gp_monitor.main - INFO - 筛选后剩余 0 条公告 2026-01-09 09:14:30 - gx_gp_monitor.storage.md_generator - INFO - Markdown文件已保存到: onu.md (共 0 条公告) 2026-01-09 09:14:30 - gx_gp_monitor.main - INFO - 爬取任务完成: {'success': True, 'total_crawled': 1300, 'filtered': 0, 'saved': 0, 'markdown_generated': True, 'notification_sent': False, 'filter_stats': {'keyword_filtered': 1300, 'date_filtered': 0, 'duplicate_filtered': 1300, 'source_filtered': 0}} {address space usage: 252985344 bytes/241MB} {rss usage: 71553024 bytes/68MB} [pid: 1782424|app: 0|req: 5/6] 183.47.98.227 () {36 vars in 678 bytes} [Fri Jan 9 09:14:27 2026] POST /api/v1/wechat/callback?msg_signature=501bf3b1b00e3662707a0775828f2eb273c49efe×tamp=1767921267&nonce=1768019490 => generated 754 bytes in 3328 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 0) 2026-01-09 09:14:47 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:47 - gx_gp_monitor - INFO - 采购公告 爬取完成,共获取 100 条公告,耗时 30.54秒 2026-01-09 09:14:47 - gx_gp_monitor - INFO - 开始爬取 结果公告 2026-01-09 09:14:48 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:48 - gx_gp_monitor - INFO - 结果公告 爬取完成,共获取 100 条公告,耗时 0.24秒 2026-01-09 09:14:48 - gx_gp_monitor - INFO - 开始爬取 合同公告 2026-01-09 09:14:48 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:48 - gx_gp_monitor - INFO - 合同公告 爬取完成,共获取 100 条公告,耗时 0.25秒 2026-01-09 09:14:48 - gx_gp_monitor - INFO - 开始爬取 更正公告 2026-01-09 09:14:48 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:48 - gx_gp_monitor - INFO - 更正公告 爬取完成,共获取 100 条公告,耗时 0.22秒 2026-01-09 09:14:48 - gx_gp_monitor - INFO - 开始爬取 招标文件预公示 2026-01-09 09:14:48 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:48 - gx_gp_monitor - INFO - 招标文件预公示 爬取完成,共获取 100 条公告,耗时 0.23秒 2026-01-09 09:14:48 - gx_gp_monitor - INFO - 开始爬取 单一来源公示 2026-01-09 09:14:49 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:49 - gx_gp_monitor - INFO - 单一来源公示 爬取完成,共获取 100 条公告,耗时 0.16秒 2026-01-09 09:14:49 - gx_gp_monitor - INFO - 开始爬取 电子卖场公示 2026-01-09 09:14:49 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:49 - gx_gp_monitor - INFO - 电子卖场公示 爬取完成,共获取 100 条公告,耗时 0.38秒 2026-01-09 09:14:49 - gx_gp_monitor - INFO - 开始爬取 履约验收公示 2026-01-09 09:14:49 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:49 - gx_gp_monitor - INFO - 履约验收公示 爬取完成,共获取 100 条公告,耗时 0.21秒 2026-01-09 09:14:49 - gx_gp_monitor - INFO - 开始爬取 工程类公告 2026-01-09 09:14:49 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:49 - gx_gp_monitor - INFO - 工程类公告 爬取完成,共获取 100 条公告,耗时 0.21秒 2026-01-09 09:14:49 - gx_gp_monitor - INFO - 开始爬取 框架协议征集公告 2026-01-09 09:14:50 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:50 - gx_gp_monitor - INFO - 框架协议征集公告 爬取完成,共获取 100 条公告,耗时 0.17秒 2026-01-09 09:14:50 - gx_gp_monitor - INFO - 开始爬取 框架协议入围结果公告 2026-01-09 09:14:50 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:50 - gx_gp_monitor - INFO - 框架协议入围结果公告 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 09:14:50 - gx_gp_monitor - INFO - 开始爬取 框架协议成交结果汇总公告 2026-01-09 09:14:50 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:50 - gx_gp_monitor - INFO - 框架协议成交结果汇总公告 爬取完成,共获取 100 条公告,耗时 0.17秒 2026-01-09 09:14:50 - gx_gp_monitor - INFO - 开始爬取 采购意向公开 2026-01-09 09:14:50 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:50 - gx_gp_monitor - INFO - 采购意向公开 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 09:14:50 - gx_gp_monitor.crawler.spider - INFO - 爬取完成: 共处理 13 个来源,成功 13 个,失败 0 个,获取 1300 条公告 2026-01-09 09:14:50 - gx_gp_monitor.main - INFO - 搜索到 1300 条原始公告 2026-01-09 09:14:50 - gx_gp_monitor.main - INFO - 手动搜索模式:跳过数据库保存 2026-01-09 09:14:50 - gx_gp_monitor.filters.filters - INFO - 日期筛选: 1300 -> 66 条公告 2026-01-09 09:14:50 - gx_gp_monitor.filters.filters - INFO - 关键词筛选: 66 -> 0 条公告 2026-01-09 09:14:50 - gx_gp_monitor.filters.filters - INFO - 来源筛选: 0 -> 0 条公告 2026-01-09 09:14:50 - gx_gp_monitor.main - INFO - 筛选后剩余 0 条公告 2026-01-09 09:14:50 - gx_gp_monitor.main - INFO - 手动爬取模式:跳过筛选后公告的数据库保存 2026-01-09 09:14:50 - gx_gp_monitor.main - INFO - 爬取任务完成: {'success': True, 'total_crawled': 1300, 'filtered': 0, 'saved': 0, 'markdown_generated': False, 'notification_sent': False, 'filter_stats': {'keyword_filtered': 66, 'date_filtered': 1234, 'duplicate_filtered': 0, 'source_filtered': 0}, 'filtered_announcements': []} {address space usage: 247742464 bytes/236MB} {rss usage: 66420736 bytes/63MB} [pid: 1782424|app: 0|req: 5/7] 183.47.117.101 () {36 vars in 679 bytes} [Fri Jan 9 09:14:17 2026] POST /api/v1/wechat/callback?msg_signature=204c42bde1a4e8aad7b3d4f5b2ef8c3145b538fa×tamp=1767921257&nonce=1768264184 => generated 798 bytes in 33167 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 1) 2026-01-09 09:14:53 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:53 - gx_gp_monitor - INFO - 采购公告 爬取完成,共获取 100 条公告,耗时 30.55秒 2026-01-09 09:14:53 - gx_gp_monitor - INFO - 开始爬取 结果公告 2026-01-09 09:14:53 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:53 - gx_gp_monitor - INFO - 结果公告 爬取完成,共获取 100 条公告,耗时 0.28秒 2026-01-09 09:14:53 - gx_gp_monitor - INFO - 开始爬取 合同公告 2026-01-09 09:14:53 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:53 - gx_gp_monitor - INFO - 合同公告 爬取完成,共获取 100 条公告,耗时 0.23秒 2026-01-09 09:14:53 - gx_gp_monitor - INFO - 开始爬取 更正公告 2026-01-09 09:14:53 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:53 - gx_gp_monitor - INFO - 更正公告 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 09:14:53 - gx_gp_monitor - INFO - 开始爬取 招标文件预公示 2026-01-09 09:14:53 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:53 - gx_gp_monitor - INFO - 招标文件预公示 爬取完成,共获取 100 条公告,耗时 0.17秒 2026-01-09 09:14:53 - gx_gp_monitor - INFO - 开始爬取 单一来源公示 2026-01-09 09:14:54 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:54 - gx_gp_monitor - INFO - 单一来源公示 爬取完成,共获取 100 条公告,耗时 0.21秒 2026-01-09 09:14:54 - gx_gp_monitor - INFO - 开始爬取 电子卖场公示 2026-01-09 09:14:54 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:54 - gx_gp_monitor - INFO - 电子卖场公示 爬取完成,共获取 100 条公告,耗时 0.39秒 2026-01-09 09:14:54 - gx_gp_monitor - INFO - 开始爬取 履约验收公示 2026-01-09 09:14:54 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:54 - gx_gp_monitor - INFO - 履约验收公示 爬取完成,共获取 100 条公告,耗时 0.22秒 2026-01-09 09:14:54 - gx_gp_monitor - INFO - 开始爬取 工程类公告 2026-01-09 09:14:54 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:54 - gx_gp_monitor - INFO - 工程类公告 爬取完成,共获取 100 条公告,耗时 0.25秒 2026-01-09 09:14:54 - gx_gp_monitor - INFO - 开始爬取 框架协议征集公告 2026-01-09 09:14:55 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:55 - gx_gp_monitor - INFO - 框架协议征集公告 爬取完成,共获取 100 条公告,耗时 0.21秒 2026-01-09 09:14:55 - gx_gp_monitor - INFO - 开始爬取 框架协议入围结果公告 2026-01-09 09:14:55 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:55 - gx_gp_monitor - INFO - 框架协议入围结果公告 爬取完成,共获取 100 条公告,耗时 0.16秒 2026-01-09 09:14:55 - gx_gp_monitor - INFO - 开始爬取 框架协议成交结果汇总公告 2026-01-09 09:14:55 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:55 - gx_gp_monitor - INFO - 框架协议成交结果汇总公告 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 09:14:55 - gx_gp_monitor - INFO - 开始爬取 采购意向公开 2026-01-09 09:14:55 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:55 - gx_gp_monitor - INFO - 采购意向公开 爬取完成,共获取 100 条公告,耗时 0.22秒 2026-01-09 09:14:55 - gx_gp_monitor.crawler.spider - INFO - 爬取完成: 共处理 13 个来源,成功 13 个,失败 0 个,获取 1300 条公告 2026-01-09 09:14:55 - gx_gp_monitor.main - INFO - 搜索到 1300 条原始公告 2026-01-09 09:14:55 - gx_gp_monitor.main - INFO - 手动搜索模式:跳过数据库保存 2026-01-09 09:14:55 - gx_gp_monitor.filters.filters - INFO - 日期筛选: 1300 -> 66 条公告 2026-01-09 09:14:55 - gx_gp_monitor.filters.filters - INFO - 关键词筛选: 66 -> 0 条公告 2026-01-09 09:14:55 - gx_gp_monitor.filters.filters - INFO - 来源筛选: 0 -> 0 条公告 2026-01-09 09:14:55 - gx_gp_monitor.main - INFO - 筛选后剩余 0 条公告 2026-01-09 09:14:55 - gx_gp_monitor.main - INFO - 手动爬取模式:跳过筛选后公告的数据库保存 2026-01-09 09:14:55 - gx_gp_monitor.main - INFO - 爬取任务完成: {'success': True, 'total_crawled': 1300, 'filtered': 0, 'saved': 0, 'markdown_generated': False, 'notification_sent': False, 'filter_stats': {'keyword_filtered': 66, 'date_filtered': 1234, 'duplicate_filtered': 0, 'source_filtered': 0}, 'filtered_announcements': []} {address space usage: 253407232 bytes/241MB} {rss usage: 72110080 bytes/68MB} [pid: 1782423|app: 0|req: 4/8] 106.55.201.217 () {36 vars in 679 bytes} [Fri Jan 9 09:14:22 2026] POST /api/v1/wechat/callback?msg_signature=204c42bde1a4e8aad7b3d4f5b2ef8c3145b538fa×tamp=1767921257&nonce=1768264184 => generated 798 bytes in 33282 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 1) 2026-01-09 09:14:57 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:57 - gx_gp_monitor - INFO - 采购公告 爬取完成,共获取 100 条公告,耗时 30.37秒 2026-01-09 09:14:57 - gx_gp_monitor - INFO - 开始爬取 结果公告 2026-01-09 09:14:58 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:58 - gx_gp_monitor - INFO - 结果公告 爬取完成,共获取 100 条公告,耗时 0.22秒 2026-01-09 09:14:58 - gx_gp_monitor - INFO - 开始爬取 合同公告 2026-01-09 09:14:58 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:58 - gx_gp_monitor - INFO - 合同公告 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 09:14:58 - gx_gp_monitor - INFO - 开始爬取 更正公告 2026-01-09 09:14:58 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:58 - gx_gp_monitor - INFO - 更正公告 爬取完成,共获取 100 条公告,耗时 0.23秒 2026-01-09 09:14:58 - gx_gp_monitor - INFO - 开始爬取 招标文件预公示 2026-01-09 09:14:58 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:58 - gx_gp_monitor - INFO - 招标文件预公示 爬取完成,共获取 100 条公告,耗时 0.16秒 2026-01-09 09:14:58 - gx_gp_monitor - INFO - 开始爬取 单一来源公示 2026-01-09 09:14:58 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:58 - gx_gp_monitor - INFO - 单一来源公示 爬取完成,共获取 100 条公告,耗时 0.22秒 2026-01-09 09:14:58 - gx_gp_monitor - INFO - 开始爬取 电子卖场公示 2026-01-09 09:14:59 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:59 - gx_gp_monitor - INFO - 电子卖场公示 爬取完成,共获取 100 条公告,耗时 0.41秒 2026-01-09 09:14:59 - gx_gp_monitor - INFO - 开始爬取 履约验收公示 2026-01-09 09:14:59 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:59 - gx_gp_monitor - INFO - 履约验收公示 爬取完成,共获取 100 条公告,耗时 0.26秒 2026-01-09 09:14:59 - gx_gp_monitor - INFO - 开始爬取 工程类公告 2026-01-09 09:14:59 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:59 - gx_gp_monitor - INFO - 工程类公告 爬取完成,共获取 100 条公告,耗时 0.23秒 2026-01-09 09:14:59 - gx_gp_monitor - INFO - 开始爬取 框架协议征集公告 2026-01-09 09:14:59 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:14:59 - gx_gp_monitor - INFO - 框架协议征集公告 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 09:14:59 - gx_gp_monitor - INFO - 开始爬取 框架协议入围结果公告 2026-01-09 09:15:00 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:15:00 - gx_gp_monitor - INFO - 框架协议入围结果公告 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 09:15:00 - gx_gp_monitor - INFO - 开始爬取 框架协议成交结果汇总公告 2026-01-09 09:15:00 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:15:00 - gx_gp_monitor - INFO - 框架协议成交结果汇总公告 爬取完成,共获取 100 条公告,耗时 0.17秒 2026-01-09 09:15:00 - gx_gp_monitor - INFO - 开始爬取 采购意向公开 2026-01-09 09:15:00 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 09:15:00 - gx_gp_monitor - INFO - 采购意向公开 爬取完成,共获取 100 条公告,耗时 0.25秒 2026-01-09 09:15:00 - gx_gp_monitor.crawler.spider - INFO - 爬取完成: 共处理 13 个来源,成功 13 个,失败 0 个,获取 1300 条公告 2026-01-09 09:15:00 - gx_gp_monitor.main - INFO - 搜索到 1300 条原始公告 2026-01-09 09:15:00 - gx_gp_monitor.main - INFO - 手动搜索模式:跳过数据库保存 2026-01-09 09:15:00 - gx_gp_monitor.filters.filters - INFO - 日期筛选: 1300 -> 66 条公告 2026-01-09 09:15:00 - gx_gp_monitor.filters.filters - INFO - 关键词筛选: 66 -> 0 条公告 2026-01-09 09:15:00 - gx_gp_monitor.filters.filters - INFO - 来源筛选: 0 -> 0 条公告 2026-01-09 09:15:00 - gx_gp_monitor.main - INFO - 筛选后剩余 0 条公告 2026-01-09 09:15:00 - gx_gp_monitor.main - INFO - 手动爬取模式:跳过筛选后公告的数据库保存 2026-01-09 09:15:00 - gx_gp_monitor.main - INFO - 爬取任务完成: {'success': True, 'total_crawled': 1300, 'filtered': 0, 'saved': 0, 'markdown_generated': False, 'notification_sent': False, 'filter_stats': {'keyword_filtered': 66, 'date_filtered': 1234, 'duplicate_filtered': 0, 'source_filtered': 0}, 'filtered_announcements': []} {address space usage: 243441664 bytes/232MB} {rss usage: 62099456 bytes/59MB} [pid: 1782423|app: 0|req: 4/9] 106.55.227.187 () {36 vars in 678 bytes} [Fri Jan 9 09:14:27 2026] POST /api/v1/wechat/callback?msg_signature=204c42bde1a4e8aad7b3d4f5b2ef8c3145b538fa×tamp=1767921257&nonce=1768264184 => generated 798 bytes in 33163 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 0) Fri Jan 9 10:01:03 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:01:03 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:01:03 2026 - gateway "uWSGI http 1" has been buried (pid: 1782428) Fri Jan 9 10:01:03 2026 - ...gracefully killing workers... Fri Jan 9 10:01:03 2026 - Gracefully killing worker 1 (pid: 1782423)... Fri Jan 9 10:01:03 2026 - Gracefully killing worker 2 (pid: 1782424)... Fri Jan 9 10:01:04 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:01:04 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:01:04 2026 - binary reloading uWSGI... Fri Jan 9 10:01:04 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:01:04 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:01:04 2026 - found fd 3 mapped to socket 0 (127.0.0.1:46665) Fri Jan 9 10:01:04 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:01:04 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:01:04 2026] *** Fri Jan 9 10:01:04 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:01:04 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:01:04 2026 - nodename: ubserver Fri Jan 9 10:01:04 2026 - machine: x86_64 Fri Jan 9 10:01:04 2026 - clock source: unix Fri Jan 9 10:01:04 2026 - pcre jit disabled Fri Jan 9 10:01:04 2026 - detected number of CPU cores: 12 Fri Jan 9 10:01:04 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:01:04 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:01:04 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:01:04 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:01:04 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:01:04 2026 - your processes number limit is 61306 Fri Jan 9 10:01:04 2026 - your memory page size is 4096 bytes Fri Jan 9 10:01:04 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:01:04 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:01:04 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:01:04 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:01:04 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:01:04 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:40683 (port auto-assigned) fd 4 Fri Jan 9 10:01:04 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:01:04 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:01:04 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:01:04 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:01:04 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:01:04 2026 - Python main interpreter initialized at 0x7dd050352d10 Fri Jan 9 10:01:04 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:01:04 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:01:04 2026 - python threads support enabled Fri Jan 9 10:01:04 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:01:04 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:01:04 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:01:04 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:01:05 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:01:05 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:01:05 2026 - WSGI app 0 (mountpoint='') ready in 1 seconds on interpreter 0x7dd050352d10 pid: 1782404 (default app) Fri Jan 9 10:01:05 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:01:05 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:01:05 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:01:05 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:01:05 2026 - spawned uWSGI worker 1 (pid: 1807020, cores: 2) Fri Jan 9 10:01:05 2026 - spawned uWSGI worker 2 (pid: 1807023, cores: 2) Fri Jan 9 10:01:05 2026 - Python auto-reloader enabled Fri Jan 9 10:01:05 2026 - spawned uWSGI http 1 (pid: 1807025) Fri Jan 9 10:01:13 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:01:13 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:01:13 2026 - gateway "uWSGI http 1" has been buried (pid: 1807025) Fri Jan 9 10:01:13 2026 - ...gracefully killing workers... Fri Jan 9 10:01:13 2026 - Gracefully killing worker 1 (pid: 1807020)... Fri Jan 9 10:01:13 2026 - Gracefully killing worker 2 (pid: 1807023)... Fri Jan 9 10:01:14 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:01:14 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:01:14 2026 - binary reloading uWSGI... Fri Jan 9 10:01:14 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:01:14 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:01:14 2026 - found fd 4 mapped to socket 0 (127.0.0.1:40683) Fri Jan 9 10:01:14 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:01:14 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:01:14 2026] *** Fri Jan 9 10:01:14 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:01:14 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:01:14 2026 - nodename: ubserver Fri Jan 9 10:01:14 2026 - machine: x86_64 Fri Jan 9 10:01:14 2026 - clock source: unix Fri Jan 9 10:01:14 2026 - pcre jit disabled Fri Jan 9 10:01:14 2026 - detected number of CPU cores: 12 Fri Jan 9 10:01:14 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:01:14 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:01:14 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:01:14 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:01:14 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:01:14 2026 - your processes number limit is 61306 Fri Jan 9 10:01:14 2026 - your memory page size is 4096 bytes Fri Jan 9 10:01:14 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:01:14 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:01:14 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:01:14 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:01:14 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:01:14 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:44999 (port auto-assigned) fd 3 Fri Jan 9 10:01:14 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:01:14 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:01:14 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:01:14 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:01:14 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:01:14 2026 - Python main interpreter initialized at 0x7eae0ff52d10 Fri Jan 9 10:01:14 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:01:14 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:01:14 2026 - python threads support enabled Fri Jan 9 10:01:14 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:01:14 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:01:14 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:01:14 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:01:14 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:01:14 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:01:14 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x7eae0ff52d10 pid: 1782404 (default app) Fri Jan 9 10:01:14 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:01:14 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:01:14 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:01:14 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:01:14 2026 - spawned uWSGI worker 1 (pid: 1807115, cores: 2) Fri Jan 9 10:01:14 2026 - spawned uWSGI worker 2 (pid: 1807118, cores: 2) Fri Jan 9 10:01:14 2026 - Python auto-reloader enabled Fri Jan 9 10:01:14 2026 - spawned uWSGI http 1 (pid: 1807121) Fri Jan 9 10:01:29 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:01:29 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:01:29 2026 - gateway "uWSGI http 1" has been buried (pid: 1807121) Fri Jan 9 10:01:29 2026 - ...gracefully killing workers... Fri Jan 9 10:01:29 2026 - Gracefully killing worker 2 (pid: 1807118)... Fri Jan 9 10:01:29 2026 - Gracefully killing worker 1 (pid: 1807115)... Fri Jan 9 10:01:30 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:01:30 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:01:30 2026 - binary reloading uWSGI... Fri Jan 9 10:01:30 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:01:30 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:01:30 2026 - found fd 3 mapped to socket 0 (127.0.0.1:44999) Fri Jan 9 10:01:30 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:01:30 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:01:30 2026] *** Fri Jan 9 10:01:30 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:01:30 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:01:30 2026 - nodename: ubserver Fri Jan 9 10:01:30 2026 - machine: x86_64 Fri Jan 9 10:01:30 2026 - clock source: unix Fri Jan 9 10:01:30 2026 - pcre jit disabled Fri Jan 9 10:01:30 2026 - detected number of CPU cores: 12 Fri Jan 9 10:01:30 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:01:30 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:01:30 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:01:30 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:01:30 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:01:30 2026 - your processes number limit is 61306 Fri Jan 9 10:01:30 2026 - your memory page size is 4096 bytes Fri Jan 9 10:01:30 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:01:30 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:01:30 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:01:30 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:01:30 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:01:30 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:46169 (port auto-assigned) fd 4 Fri Jan 9 10:01:30 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:01:30 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:01:30 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:01:30 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:01:30 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:01:30 2026 - Python main interpreter initialized at 0x7a0e7a752d10 Fri Jan 9 10:01:30 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:01:30 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:01:30 2026 - python threads support enabled Fri Jan 9 10:01:30 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:01:30 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:01:30 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:01:30 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:01:30 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:01:30 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:01:30 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x7a0e7a752d10 pid: 1782404 (default app) Fri Jan 9 10:01:30 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:01:30 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:01:30 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:01:30 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:01:30 2026 - spawned uWSGI worker 1 (pid: 1807173, cores: 2) Fri Jan 9 10:01:30 2026 - spawned uWSGI worker 2 (pid: 1807174, cores: 2) Fri Jan 9 10:01:30 2026 - spawned uWSGI http 1 (pid: 1807177) Fri Jan 9 10:01:30 2026 - Python auto-reloader enabled 2026-01-09 10:02:17 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 10:02:17 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: fl+xWhqaMMamwSp+ChWaJEvMtidFRZHUX4thfSYmtYqGtoWwkg... 2026-01-09 10:02:17 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 84c30ad0c256e1dc1766b83a7afdcc9e2452102b 2026-01-09 10:02:17 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 84c30ad0c256e1dc1766b83a7afdcc9e2452102b 2026-01-09 10:02:17 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 10:02:17 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 10:02:17 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=text 2026-01-09 10:02:17 - gx_gp_monitor.wechat.callback_server - INFO - 处理文本消息: content=马山..., user=WeiJueSen 2026-01-09 10:02:17 - gx_gp_monitor.wechat.message_handler - INFO - 处理文本消息: 马山, user: WeiJueSen 2026-01-09 10:02:17 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 关键词搜索: ['马山'] 2026-01-09 10:02:17 - gx_gp_monitor.main - INFO - === 广西政府采购网公告监控系统启动 === 2026-01-09 10:02:17 - gx_gp_monitor.main - INFO - 版本: 1.0.0 2026-01-09 10:02:17 - gx_gp_monitor.main - INFO - 配置文件: 默认配置 2026-01-09 10:02:17 - gx_gp_monitor.core.reliability - INFO - 健康检查通过 2026-01-09 10:02:18 - gx_gp_monitor.core.database - INFO - 数据库连接池初始化成功 2026-01-09 10:02:18 - gx_gp_monitor.core.database - INFO - 开始初始化数据库表结构 2026-01-09 10:02:18 - gx_gp_monitor.core.database - INFO - 数据库表结构初始化完成 2026-01-09 10:02:18 - gx_gp_monitor.storage.postgresql - INFO - 存储初始化完成 2026-01-09 10:02:18 - gx_gp_monitor.main - INFO - 应用初始化完成 2026-01-09 10:02:18 - gx_gp_monitor.main - INFO - 开始执行搜索任务 (手动搜索: True) 2026-01-09 10:02:18 - gx_gp_monitor.crawler.spider - INFO - 开始爬取 13 个公告来源 2026-01-09 10:02:18 - gx_gp_monitor - INFO - 开始爬取 采购公告 2026-01-09 10:02:22 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 10:02:22 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: fl+xWhqaMMamwSp+ChWaJEvMtidFRZHUX4thfSYmtYqGtoWwkg... 2026-01-09 10:02:22 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 84c30ad0c256e1dc1766b83a7afdcc9e2452102b 2026-01-09 10:02:22 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 84c30ad0c256e1dc1766b83a7afdcc9e2452102b 2026-01-09 10:02:22 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 10:02:22 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 10:02:22 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=text 2026-01-09 10:02:22 - gx_gp_monitor.wechat.callback_server - INFO - 处理文本消息: content=马山..., user=WeiJueSen 2026-01-09 10:02:22 - gx_gp_monitor.wechat.message_handler - INFO - 处理文本消息: 马山, user: WeiJueSen 2026-01-09 10:02:22 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 关键词搜索: ['马山'] 2026-01-09 10:02:22 - gx_gp_monitor.main - INFO - === 广西政府采购网公告监控系统启动 === 2026-01-09 10:02:22 - gx_gp_monitor.main - INFO - 版本: 1.0.0 2026-01-09 10:02:22 - gx_gp_monitor.main - INFO - 配置文件: 默认配置 2026-01-09 10:02:23 - gx_gp_monitor.core.reliability - INFO - 健康检查通过 2026-01-09 10:02:23 - gx_gp_monitor.core.database - INFO - 数据库连接池初始化成功 2026-01-09 10:02:23 - gx_gp_monitor.core.database - INFO - 开始初始化数据库表结构 2026-01-09 10:02:23 - gx_gp_monitor.core.database - INFO - 数据库表结构初始化完成 2026-01-09 10:02:23 - gx_gp_monitor.storage.postgresql - INFO - 存储初始化完成 2026-01-09 10:02:23 - gx_gp_monitor.main - INFO - 应用初始化完成 2026-01-09 10:02:23 - gx_gp_monitor.main - INFO - 开始执行搜索任务 (手动搜索: True) 2026-01-09 10:02:23 - gx_gp_monitor.crawler.spider - INFO - 开始爬取 13 个公告来源 2026-01-09 10:02:23 - gx_gp_monitor - INFO - 开始爬取 采购公告 2026-01-09 10:02:27 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 10:02:27 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: fl+xWhqaMMamwSp+ChWaJEvMtidFRZHUX4thfSYmtYqGtoWwkg... 2026-01-09 10:02:27 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 84c30ad0c256e1dc1766b83a7afdcc9e2452102b 2026-01-09 10:02:27 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 84c30ad0c256e1dc1766b83a7afdcc9e2452102b 2026-01-09 10:02:27 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 10:02:27 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 10:02:27 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=text 2026-01-09 10:02:27 - gx_gp_monitor.wechat.callback_server - INFO - 处理文本消息: content=马山..., user=WeiJueSen 2026-01-09 10:02:27 - gx_gp_monitor.wechat.message_handler - INFO - 处理文本消息: 马山, user: WeiJueSen 2026-01-09 10:02:27 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 关键词搜索: ['马山'] 2026-01-09 10:02:27 - gx_gp_monitor.main - INFO - 开始执行搜索任务 (手动搜索: True) 2026-01-09 10:02:27 - gx_gp_monitor.crawler.spider - INFO - 开始爬取 13 个公告来源 2026-01-09 10:02:27 - gx_gp_monitor - INFO - 开始爬取 采购公告 2026-01-09 10:02:28 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:02:28 - gx_gp_monitor - INFO - 采购公告 爬取完成,共获取 100 条公告,耗时 0.39秒 2026-01-09 10:02:28 - gx_gp_monitor - INFO - 开始爬取 结果公告 2026-01-09 10:02:28 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:02:28 - gx_gp_monitor - INFO - 结果公告 爬取完成,共获取 100 条公告,耗时 0.26秒 2026-01-09 10:02:28 - gx_gp_monitor - INFO - 开始爬取 合同公告 2026-01-09 10:02:28 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:02:28 - gx_gp_monitor - INFO - 合同公告 爬取完成,共获取 100 条公告,耗时 0.27秒 2026-01-09 10:02:28 - gx_gp_monitor - INFO - 开始爬取 更正公告 2026-01-09 10:02:29 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:02:29 - gx_gp_monitor - INFO - 更正公告 爬取完成,共获取 100 条公告,耗时 0.25秒 2026-01-09 10:02:29 - gx_gp_monitor - INFO - 开始爬取 招标文件预公示 2026-01-09 10:02:29 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:02:29 - gx_gp_monitor - INFO - 招标文件预公示 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 10:02:29 - gx_gp_monitor - INFO - 开始爬取 单一来源公示 2026-01-09 10:02:29 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:02:29 - gx_gp_monitor - INFO - 单一来源公示 爬取完成,共获取 100 条公告,耗时 0.27秒 2026-01-09 10:02:29 - gx_gp_monitor - INFO - 开始爬取 电子卖场公示 2026-01-09 10:02:29 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:02:29 - gx_gp_monitor - INFO - 电子卖场公示 爬取完成,共获取 100 条公告,耗时 0.40秒 2026-01-09 10:02:29 - gx_gp_monitor - INFO - 开始爬取 履约验收公示 2026-01-09 10:02:30 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:02:30 - gx_gp_monitor - INFO - 履约验收公示 爬取完成,共获取 100 条公告,耗时 0.21秒 2026-01-09 10:02:30 - gx_gp_monitor - INFO - 开始爬取 工程类公告 2026-01-09 10:02:30 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:02:30 - gx_gp_monitor - INFO - 工程类公告 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 10:02:30 - gx_gp_monitor - INFO - 开始爬取 框架协议征集公告 2026-01-09 10:02:30 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:02:30 - gx_gp_monitor - INFO - 框架协议征集公告 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 10:02:30 - gx_gp_monitor - INFO - 开始爬取 框架协议入围结果公告 2026-01-09 10:02:30 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:02:30 - gx_gp_monitor - INFO - 框架协议入围结果公告 爬取完成,共获取 100 条公告,耗时 0.21秒 2026-01-09 10:02:30 - gx_gp_monitor - INFO - 开始爬取 框架协议成交结果汇总公告 2026-01-09 10:02:30 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:02:30 - gx_gp_monitor - INFO - 框架协议成交结果汇总公告 爬取完成,共获取 100 条公告,耗时 0.16秒 2026-01-09 10:02:30 - gx_gp_monitor - INFO - 开始爬取 采购意向公开 2026-01-09 10:02:31 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:02:31 - gx_gp_monitor - INFO - 采购意向公开 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 10:02:31 - gx_gp_monitor.crawler.spider - INFO - 爬取完成: 共处理 13 个来源,成功 13 个,失败 0 个,获取 1300 条公告 2026-01-09 10:02:31 - gx_gp_monitor.main - INFO - 搜索到 1300 条原始公告 2026-01-09 10:02:31 - gx_gp_monitor.main - INFO - 手动搜索模式:跳过数据库保存 2026-01-09 10:02:31 - gx_gp_monitor.filters.filters - INFO - 日期筛选: 1300 -> 134 条公告 2026-01-09 10:02:31 - gx_gp_monitor.filters.filters - INFO - 关键词筛选: 134 -> 2 条公告 2026-01-09 10:02:31 - gx_gp_monitor.filters.filters - INFO - 来源筛选: 2 -> 2 条公告 2026-01-09 10:02:31 - gx_gp_monitor.main - INFO - 筛选后剩余 2 条公告 2026-01-09 10:02:31 - gx_gp_monitor.main - INFO - 手动爬取模式:跳过筛选后公告的数据库保存 2026-01-09 10:02:31 - gx_gp_monitor.main - INFO - 爬取任务完成: {'success': True, 'total_crawled': 1300, 'filtered': 2, 'saved': 0, 'markdown_generated': False, 'notification_sent': True, 'filter_stats': {'keyword_filtered': 132, 'date_filtered': 1166, 'duplicate_filtered': 0, 'source_filtered': 0}, 'filtered_announcements': [Announcement(id=None, title='关于打印/复印纸的网上超市合同公告', publish_date=datetime.datetime(2026, 1, 9, 9, 53, 47), purchase_name='马山县卫生健康局', content_url='https://zfcg.gxzf.gov.cn/site/detail?parentId=66485&articleId=TQ8JBxuEbH10KU93ffGNUQ==', source_code='ZcyAnnouncement7', source_name='电子卖场公示', announcement_type=, crawled_at=datetime.datetime(2026, 1, 9, 10, 2, 29, 544509), created_at=None, updated_at=None, content_hash='406c71dd23410b265f2776eef85bddc7', keyword_matched=True, date_filtered=True, is_new=True, is_today=True), Announcement(id=None, title='马山县疾病预防控制中心[2181801000007961838]马山县龙之都汽车服务有限公司2025-2026年马山县县本级预算单位公务车辆维修、保养服务框架协议采购的验收公告', publish_date=datetime.datetime(2026, 1, 9, 9, 33, 27), purchase_name='马山县疾病预防控制中心', content_url='https://zfcg.gxzf.gov.cn/site/detail?parentId=66485&articleId=MiIzDm+fgMeYY8CH5dIPRA==', source_code='ZcyAnnouncement10', source_name='履约验收公示', announcement_type=, crawled_at=datetime.datetime(2026, 1, 9, 10, 2, 29, 948741), created_at=None, updated_at=None, content_hash='f22c9ba4ff8375192b93c24e1a2901df', keyword_matched=True, date_filtered=True, is_new=True, is_today=True)]} {address space usage: 250855424 bytes/239MB} {rss usage: 68419584 bytes/65MB} [pid: 1807174|app: 0|req: 2/1] 112.53.2.93 () {36 vars in 676 bytes} [Fri Jan 9 10:02:27 2026] POST /api/v1/wechat/callback?msg_signature=84c30ad0c256e1dc1766b83a7afdcc9e2452102b×tamp=1767924137&nonce=1768656856 => generated 710 bytes in 3221 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 1) Fri Jan 9 10:02:47 2026 - *** HARAKIRI ON WORKER 1 (pid: 1807173, try: 1, graceful: yes) *** Fri Jan 9 10:02:47 2026 - HARAKIRI !!! worker 1 status !!! Fri Jan 9 10:02:47 2026 - HARAKIRI [core 0] 183.47.98.227 - POST /api/v1/wechat/callback?msg_signature=84c30ad0c256e1dc1766b83a7afdcc9e2452102b×tamp=1767924137&nonce=1768656856 since 1767924137 Fri Jan 9 10:02:47 2026 - HARAKIRI !!! end of worker 1 status !!! Fri Jan 9 10:02:47 2026 - HARAKIRI triggered by worker 1 core 0 !!! Fri Jan 9 10:02:48 2026 - DAMN ! worker 1 (pid: 1807173) died, killed by signal 9 :( trying respawn ... Fri Jan 9 10:02:48 2026 - Respawned uWSGI worker 1 (new pid: 1807577) Fri Jan 9 10:02:48 2026 - Python auto-reloader enabled 2026-01-09 10:02:53 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:02:53 - gx_gp_monitor - INFO - 采购公告 爬取完成,共获取 100 条公告,耗时 30.41秒 2026-01-09 10:02:53 - gx_gp_monitor - INFO - 开始爬取 结果公告 2026-01-09 10:02:53 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:02:53 - gx_gp_monitor - INFO - 结果公告 爬取完成,共获取 100 条公告,耗时 0.24秒 2026-01-09 10:02:53 - gx_gp_monitor - INFO - 开始爬取 合同公告 2026-01-09 10:02:53 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:02:53 - gx_gp_monitor - INFO - 合同公告 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 10:02:53 - gx_gp_monitor - INFO - 开始爬取 更正公告 2026-01-09 10:02:54 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:02:54 - gx_gp_monitor - INFO - 更正公告 爬取完成,共获取 100 条公告,耗时 0.27秒 2026-01-09 10:02:54 - gx_gp_monitor - INFO - 开始爬取 招标文件预公示 2026-01-09 10:02:55 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:02:55 - gx_gp_monitor - INFO - 招标文件预公示 爬取完成,共获取 100 条公告,耗时 0.89秒 2026-01-09 10:02:55 - gx_gp_monitor - INFO - 开始爬取 单一来源公示 2026-01-09 10:02:55 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:02:55 - gx_gp_monitor - INFO - 单一来源公示 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 10:02:55 - gx_gp_monitor - INFO - 开始爬取 电子卖场公示 2026-01-09 10:02:55 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:02:55 - gx_gp_monitor - INFO - 电子卖场公示 爬取完成,共获取 100 条公告,耗时 0.42秒 2026-01-09 10:02:55 - gx_gp_monitor - INFO - 开始爬取 履约验收公示 2026-01-09 10:02:55 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:02:55 - gx_gp_monitor - INFO - 履约验收公示 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 10:02:55 - gx_gp_monitor - INFO - 开始爬取 工程类公告 2026-01-09 10:02:56 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:02:56 - gx_gp_monitor - INFO - 工程类公告 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 10:02:56 - gx_gp_monitor - INFO - 开始爬取 框架协议征集公告 2026-01-09 10:02:56 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:02:56 - gx_gp_monitor - INFO - 框架协议征集公告 爬取完成,共获取 100 条公告,耗时 0.25秒 2026-01-09 10:02:56 - gx_gp_monitor - INFO - 开始爬取 框架协议入围结果公告 2026-01-09 10:02:56 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:02:56 - gx_gp_monitor - INFO - 框架协议入围结果公告 爬取完成,共获取 100 条公告,耗时 0.25秒 2026-01-09 10:02:56 - gx_gp_monitor - INFO - 开始爬取 框架协议成交结果汇总公告 2026-01-09 10:02:56 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:02:56 - gx_gp_monitor - INFO - 框架协议成交结果汇总公告 爬取完成,共获取 100 条公告,耗时 0.29秒 2026-01-09 10:02:56 - gx_gp_monitor - INFO - 开始爬取 采购意向公开 2026-01-09 10:02:57 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:02:57 - gx_gp_monitor - INFO - 采购意向公开 爬取完成,共获取 100 条公告,耗时 0.23秒 2026-01-09 10:02:57 - gx_gp_monitor.crawler.spider - INFO - 爬取完成: 共处理 13 个来源,成功 13 个,失败 0 个,获取 1300 条公告 2026-01-09 10:02:57 - gx_gp_monitor.main - INFO - 搜索到 1300 条原始公告 2026-01-09 10:02:57 - gx_gp_monitor.main - INFO - 手动搜索模式:跳过数据库保存 2026-01-09 10:02:57 - gx_gp_monitor.filters.filters - INFO - 日期筛选: 1300 -> 135 条公告 2026-01-09 10:02:57 - gx_gp_monitor.filters.filters - INFO - 关键词筛选: 135 -> 2 条公告 2026-01-09 10:02:57 - gx_gp_monitor.filters.filters - INFO - 来源筛选: 2 -> 2 条公告 2026-01-09 10:02:57 - gx_gp_monitor.main - INFO - 筛选后剩余 2 条公告 2026-01-09 10:02:57 - gx_gp_monitor.main - INFO - 手动爬取模式:跳过筛选后公告的数据库保存 2026-01-09 10:02:57 - gx_gp_monitor.main - INFO - 爬取任务完成: {'success': True, 'total_crawled': 1300, 'filtered': 2, 'saved': 0, 'markdown_generated': False, 'notification_sent': True, 'filter_stats': {'keyword_filtered': 133, 'date_filtered': 1165, 'duplicate_filtered': 0, 'source_filtered': 0}, 'filtered_announcements': [Announcement(id=None, title='关于打印/复印纸的网上超市合同公告', publish_date=datetime.datetime(2026, 1, 9, 9, 53, 47), purchase_name='马山县卫生健康局', content_url='https://zfcg.gxzf.gov.cn/site/detail?parentId=66485&articleId=TQ8JBxuEbH10KU93ffGNUQ==', source_code='ZcyAnnouncement7', source_name='电子卖场公示', announcement_type=, crawled_at=datetime.datetime(2026, 1, 9, 10, 2, 55, 251692), created_at=None, updated_at=None, content_hash='406c71dd23410b265f2776eef85bddc7', keyword_matched=True, date_filtered=True, is_new=True, is_today=True), Announcement(id=None, title='马山县疾病预防控制中心[2181801000007961838]马山县龙之都汽车服务有限公司2025-2026年马山县县本级预算单位公务车辆维修、保养服务框架协议采购的验收公告', publish_date=datetime.datetime(2026, 1, 9, 9, 33, 27), purchase_name='马山县疾病预防控制中心', content_url='https://zfcg.gxzf.gov.cn/site/detail?parentId=66485&articleId=MiIzDm+fgMeYY8CH5dIPRA==', source_code='ZcyAnnouncement10', source_name='履约验收公示', announcement_type=, crawled_at=datetime.datetime(2026, 1, 9, 10, 2, 55, 671160), created_at=None, updated_at=None, content_hash='f22c9ba4ff8375192b93c24e1a2901df', keyword_matched=True, date_filtered=True, is_new=True, is_today=True)]} {address space usage: 243552256 bytes/232MB} {rss usage: 61341696 bytes/58MB} [pid: 1807174|app: 0|req: 2/2] 106.55.202.215 () {36 vars in 679 bytes} [Fri Jan 9 10:02:22 2026] POST /api/v1/wechat/callback?msg_signature=84c30ad0c256e1dc1766b83a7afdcc9e2452102b×tamp=1767924137&nonce=1768656856 => generated 710 bytes in 34214 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 0) 2026-01-09 10:09:36 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 10:09:36 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: 5DXzoSk72rLPjWkQPcghu1KqCusBzSYPZGb4sg1eEU8I08mw4c... 2026-01-09 10:09:36 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 545f8abd520fa65851b3da066d1d47be9c61b45c 2026-01-09 10:09:36 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 545f8abd520fa65851b3da066d1d47be9c61b45c 2026-01-09 10:09:36 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 10:09:36 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 10:09:36 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=text 2026-01-09 10:09:36 - gx_gp_monitor.wechat.callback_server - INFO - 处理文本消息: content=大化..., user=WeiJueSen 2026-01-09 10:09:36 - gx_gp_monitor.wechat.message_handler - INFO - 处理文本消息: 大化, user: WeiJueSen 2026-01-09 10:09:36 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 关键词搜索: ['大化'] 2026-01-09 10:09:36 - gx_gp_monitor.main - INFO - 开始执行搜索任务 (手动搜索: True) 2026-01-09 10:09:37 - gx_gp_monitor.core.reliability - INFO - 健康检查通过 2026-01-09 10:09:37 - gx_gp_monitor.crawler.spider - INFO - 开始爬取 13 个公告来源 2026-01-09 10:09:37 - gx_gp_monitor - INFO - 开始爬取 采购公告 2026-01-09 10:09:41 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 10:09:41 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: 5DXzoSk72rLPjWkQPcghu1KqCusBzSYPZGb4sg1eEU8I08mw4c... 2026-01-09 10:09:41 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 545f8abd520fa65851b3da066d1d47be9c61b45c 2026-01-09 10:09:41 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 545f8abd520fa65851b3da066d1d47be9c61b45c 2026-01-09 10:09:41 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 10:09:41 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 10:09:41 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=text 2026-01-09 10:09:41 - gx_gp_monitor.wechat.callback_server - INFO - 处理文本消息: content=大化..., user=WeiJueSen 2026-01-09 10:09:41 - gx_gp_monitor.wechat.message_handler - INFO - 处理文本消息: 大化, user: WeiJueSen 2026-01-09 10:09:41 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 关键词搜索: ['大化'] 2026-01-09 10:09:41 - gx_gp_monitor.main - INFO - === 广西政府采购网公告监控系统启动 === 2026-01-09 10:09:41 - gx_gp_monitor.main - INFO - 版本: 1.0.0 2026-01-09 10:09:41 - gx_gp_monitor.main - INFO - 配置文件: 默认配置 2026-01-09 10:09:42 - gx_gp_monitor.core.reliability - INFO - 健康检查通过 2026-01-09 10:09:42 - gx_gp_monitor.core.database - INFO - 数据库连接池初始化成功 2026-01-09 10:09:42 - gx_gp_monitor.core.database - INFO - 开始初始化数据库表结构 2026-01-09 10:09:42 - gx_gp_monitor.core.database - INFO - 数据库表结构初始化完成 2026-01-09 10:09:42 - gx_gp_monitor.storage.postgresql - INFO - 存储初始化完成 2026-01-09 10:09:42 - gx_gp_monitor.main - INFO - 应用初始化完成 2026-01-09 10:09:42 - gx_gp_monitor.main - INFO - 开始执行搜索任务 (手动搜索: True) 2026-01-09 10:09:42 - gx_gp_monitor.crawler.spider - INFO - 开始爬取 13 个公告来源 2026-01-09 10:09:42 - gx_gp_monitor - INFO - 开始爬取 采购公告 2026-01-09 10:09:42 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:09:42 - gx_gp_monitor - INFO - 采购公告 爬取完成,共获取 100 条公告,耗时 0.37秒 2026-01-09 10:09:42 - gx_gp_monitor - INFO - 开始爬取 结果公告 2026-01-09 10:09:42 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:09:42 - gx_gp_monitor - INFO - 结果公告 爬取完成,共获取 100 条公告,耗时 0.23秒 2026-01-09 10:09:42 - gx_gp_monitor - INFO - 开始爬取 合同公告 2026-01-09 10:09:42 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:09:42 - gx_gp_monitor - INFO - 合同公告 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 10:09:42 - gx_gp_monitor - INFO - 开始爬取 更正公告 2026-01-09 10:09:43 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:09:43 - gx_gp_monitor - INFO - 更正公告 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 10:09:43 - gx_gp_monitor - INFO - 开始爬取 招标文件预公示 2026-01-09 10:09:43 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:09:43 - gx_gp_monitor - INFO - 招标文件预公示 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 10:09:43 - gx_gp_monitor - INFO - 开始爬取 单一来源公示 2026-01-09 10:09:43 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:09:43 - gx_gp_monitor - INFO - 单一来源公示 爬取完成,共获取 100 条公告,耗时 0.24秒 2026-01-09 10:09:43 - gx_gp_monitor - INFO - 开始爬取 电子卖场公示 2026-01-09 10:09:43 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:09:43 - gx_gp_monitor - INFO - 电子卖场公示 爬取完成,共获取 100 条公告,耗时 0.32秒 2026-01-09 10:09:43 - gx_gp_monitor - INFO - 开始爬取 履约验收公示 2026-01-09 10:09:44 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:09:44 - gx_gp_monitor - INFO - 履约验收公示 爬取完成,共获取 100 条公告,耗时 0.26秒 2026-01-09 10:09:44 - gx_gp_monitor - INFO - 开始爬取 工程类公告 2026-01-09 10:09:44 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:09:44 - gx_gp_monitor - INFO - 工程类公告 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 10:09:44 - gx_gp_monitor - INFO - 开始爬取 框架协议征集公告 2026-01-09 10:09:44 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:09:44 - gx_gp_monitor - INFO - 框架协议征集公告 爬取完成,共获取 100 条公告,耗时 0.17秒 2026-01-09 10:09:44 - gx_gp_monitor - INFO - 开始爬取 框架协议入围结果公告 2026-01-09 10:09:44 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:09:44 - gx_gp_monitor - INFO - 框架协议入围结果公告 爬取完成,共获取 100 条公告,耗时 0.16秒 2026-01-09 10:09:44 - gx_gp_monitor - INFO - 开始爬取 框架协议成交结果汇总公告 2026-01-09 10:09:44 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:09:44 - gx_gp_monitor - INFO - 框架协议成交结果汇总公告 爬取完成,共获取 100 条公告,耗时 0.25秒 2026-01-09 10:09:44 - gx_gp_monitor - INFO - 开始爬取 采购意向公开 2026-01-09 10:09:45 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:09:45 - gx_gp_monitor - INFO - 采购意向公开 爬取完成,共获取 100 条公告,耗时 0.17秒 2026-01-09 10:09:45 - gx_gp_monitor.crawler.spider - INFO - 爬取完成: 共处理 13 个来源,成功 13 个,失败 0 个,获取 1300 条公告 2026-01-09 10:09:45 - gx_gp_monitor.main - INFO - 搜索到 1300 条原始公告 2026-01-09 10:09:45 - gx_gp_monitor.main - INFO - 手动搜索模式:跳过数据库保存 2026-01-09 10:09:45 - gx_gp_monitor.filters.filters - INFO - 日期筛选: 1300 -> 147 条公告 2026-01-09 10:09:45 - gx_gp_monitor.filters.filters - INFO - 关键词筛选: 147 -> 0 条公告 2026-01-09 10:09:45 - gx_gp_monitor.filters.filters - INFO - 来源筛选: 0 -> 0 条公告 2026-01-09 10:09:45 - gx_gp_monitor.main - INFO - 筛选后剩余 0 条公告 2026-01-09 10:09:45 - gx_gp_monitor.main - INFO - 手动爬取模式:跳过筛选后公告的数据库保存 2026-01-09 10:09:45 - gx_gp_monitor.main - INFO - 爬取任务完成: {'success': True, 'total_crawled': 1300, 'filtered': 0, 'saved': 0, 'markdown_generated': False, 'notification_sent': False, 'filter_stats': {'keyword_filtered': 147, 'date_filtered': 1153, 'duplicate_filtered': 0, 'source_filtered': 0}, 'filtered_announcements': []} {address space usage: 240259072 bytes/229MB} {rss usage: 52899840 bytes/50MB} [pid: 1807577|app: 0|req: 2/3] 106.55.202.215 () {36 vars in 679 bytes} [Fri Jan 9 10:09:41 2026] POST /api/v1/wechat/callback?msg_signature=545f8abd520fa65851b3da066d1d47be9c61b45c×tamp=1767924576&nonce=1768748800 => generated 798 bytes in 3164 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 0) 2026-01-09 10:09:57 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 10:09:57 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: EV/PxbQk0Wr980DlO57RfvBpRIvjlxPWion7LkljkQDVheF4pF... 2026-01-09 10:09:57 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 970dc8e6b91fb5479eb69edcabd6f966f6225465 2026-01-09 10:09:57 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 970dc8e6b91fb5479eb69edcabd6f966f6225465 2026-01-09 10:09:57 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 10:09:57 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 10:09:57 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=event 2026-01-09 10:09:57 - gx_gp_monitor.wechat.callback_server - INFO - 处理事件消息: event=click, event_key=latest_news, user=WeiJueSen 2026-01-09 10:09:57 - gx_gp_monitor.wechat.message_handler - INFO - 处理事件: click, key: latest_news, user: WeiJueSen 2026-01-09 10:09:57 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 请求最新公告 {address space usage: 254078976 bytes/242MB} {rss usage: 71958528 bytes/68MB} [pid: 1807174|app: 0|req: 4/4] 183.47.98.227 () {36 vars in 678 bytes} [Fri Jan 9 10:09:57 2026] POST /api/v1/wechat/callback?msg_signature=970dc8e6b91fb5479eb69edcabd6f966f6225465×tamp=1767924597&nonce=1767910694 => generated 343198 bytes in 32 msecs (HTTP/1.1 200) 2 headers in 83 bytes (1 switches on core 0) 2026-01-09 10:10:07 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:10:07 - gx_gp_monitor - INFO - 采购公告 爬取完成,共获取 100 条公告,耗时 30.46秒 2026-01-09 10:10:07 - gx_gp_monitor - INFO - 开始爬取 结果公告 2026-01-09 10:10:07 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:10:07 - gx_gp_monitor - INFO - 结果公告 爬取完成,共获取 100 条公告,耗时 0.27秒 2026-01-09 10:10:07 - gx_gp_monitor - INFO - 开始爬取 合同公告 2026-01-09 10:10:08 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:10:08 - gx_gp_monitor - INFO - 合同公告 爬取完成,共获取 100 条公告,耗时 0.23秒 2026-01-09 10:10:08 - gx_gp_monitor - INFO - 开始爬取 更正公告 2026-01-09 10:10:08 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:10:08 - gx_gp_monitor - INFO - 更正公告 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 10:10:08 - gx_gp_monitor - INFO - 开始爬取 招标文件预公示 2026-01-09 10:10:08 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:10:08 - gx_gp_monitor - INFO - 招标文件预公示 爬取完成,共获取 100 条公告,耗时 0.25秒 2026-01-09 10:10:08 - gx_gp_monitor - INFO - 开始爬取 单一来源公示 2026-01-09 10:10:08 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:10:08 - gx_gp_monitor - INFO - 单一来源公示 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 10:10:08 - gx_gp_monitor - INFO - 开始爬取 电子卖场公示 2026-01-09 10:10:08 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:10:08 - gx_gp_monitor - INFO - 电子卖场公示 爬取完成,共获取 100 条公告,耗时 0.32秒 2026-01-09 10:10:08 - gx_gp_monitor - INFO - 开始爬取 履约验收公示 2026-01-09 10:10:09 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:10:09 - gx_gp_monitor - INFO - 履约验收公示 爬取完成,共获取 100 条公告,耗时 0.17秒 2026-01-09 10:10:09 - gx_gp_monitor - INFO - 开始爬取 工程类公告 2026-01-09 10:10:09 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:10:09 - gx_gp_monitor - INFO - 工程类公告 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 10:10:09 - gx_gp_monitor - INFO - 开始爬取 框架协议征集公告 2026-01-09 10:10:09 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:10:09 - gx_gp_monitor - INFO - 框架协议征集公告 爬取完成,共获取 100 条公告,耗时 0.15秒 2026-01-09 10:10:09 - gx_gp_monitor - INFO - 开始爬取 框架协议入围结果公告 2026-01-09 10:10:09 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:10:09 - gx_gp_monitor - INFO - 框架协议入围结果公告 爬取完成,共获取 100 条公告,耗时 0.23秒 2026-01-09 10:10:09 - gx_gp_monitor - INFO - 开始爬取 框架协议成交结果汇总公告 2026-01-09 10:10:09 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:10:09 - gx_gp_monitor - INFO - 框架协议成交结果汇总公告 爬取完成,共获取 100 条公告,耗时 0.17秒 2026-01-09 10:10:09 - gx_gp_monitor - INFO - 开始爬取 采购意向公开 2026-01-09 10:10:10 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:10:10 - gx_gp_monitor - INFO - 采购意向公开 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 10:10:10 - gx_gp_monitor.crawler.spider - INFO - 爬取完成: 共处理 13 个来源,成功 13 个,失败 0 个,获取 1300 条公告 2026-01-09 10:10:10 - gx_gp_monitor.main - INFO - 搜索到 1300 条原始公告 2026-01-09 10:10:10 - gx_gp_monitor.main - INFO - 手动搜索模式:跳过数据库保存 2026-01-09 10:10:10 - gx_gp_monitor.filters.filters - INFO - 日期筛选: 1300 -> 149 条公告 2026-01-09 10:10:10 - gx_gp_monitor.filters.filters - INFO - 关键词筛选: 149 -> 0 条公告 2026-01-09 10:10:10 - gx_gp_monitor.filters.filters - INFO - 来源筛选: 0 -> 0 条公告 2026-01-09 10:10:10 - gx_gp_monitor.main - INFO - 筛选后剩余 0 条公告 2026-01-09 10:10:10 - gx_gp_monitor.main - INFO - 手动爬取模式:跳过筛选后公告的数据库保存 2026-01-09 10:10:10 - gx_gp_monitor.main - INFO - 爬取任务完成: {'success': True, 'total_crawled': 1300, 'filtered': 0, 'saved': 0, 'markdown_generated': False, 'notification_sent': False, 'filter_stats': {'keyword_filtered': 149, 'date_filtered': 1151, 'duplicate_filtered': 0, 'source_filtered': 0}, 'filtered_announcements': []} {address space usage: 247787520 bytes/236MB} {rss usage: 60436480 bytes/57MB} [pid: 1807174|app: 0|req: 4/5] 14.116.241.251 () {36 vars in 679 bytes} [Fri Jan 9 10:09:36 2026] POST /api/v1/wechat/callback?msg_signature=545f8abd520fa65851b3da066d1d47be9c61b45c×tamp=1767924576&nonce=1768748800 => generated 798 bytes in 33166 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 1) 2026-01-09 10:25:42 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 10:25:42 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: 7oYpd6+5fsif46fnY3VTPqPcdhC2dlaybw3TzI3H44K2DFDpGL... 2026-01-09 10:25:42 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 0cb188a04afb33504e72c7cad29ac0e1050a5d49 2026-01-09 10:25:42 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 0cb188a04afb33504e72c7cad29ac0e1050a5d49 2026-01-09 10:25:42 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 10:25:42 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 10:25:42 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=event 2026-01-09 10:25:42 - gx_gp_monitor.wechat.callback_server - INFO - 处理事件消息: event=click, event_key=today_stats, user=WeiJueSen 2026-01-09 10:25:42 - gx_gp_monitor.wechat.message_handler - INFO - 处理事件: click, key: today_stats, user: WeiJueSen 2026-01-09 10:25:42 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 请求今日统计 {address space usage: 240259072 bytes/229MB} {rss usage: 52899840 bytes/50MB} [pid: 1807577|app: 0|req: 3/6] 183.47.98.168 () {36 vars in 678 bytes} [Fri Jan 9 10:25:42 2026] POST /api/v1/wechat/callback?msg_signature=0cb188a04afb33504e72c7cad29ac0e1050a5d49×tamp=1767925542&nonce=1768148594 => generated 966 bytes in 5 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 1) 2026-01-09 10:26:11 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 10:26:11 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: zEWl1m4Dcc4egm7eYKtlGk5Qxl/3qanWwWJBr1lrnBUigFykbr... 2026-01-09 10:26:11 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 79e58abff8031c45f7d7639552e7e693239370b0 2026-01-09 10:26:11 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 79e58abff8031c45f7d7639552e7e693239370b0 2026-01-09 10:26:11 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 10:26:11 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 10:26:11 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=text 2026-01-09 10:26:11 - gx_gp_monitor.wechat.callback_server - INFO - 处理文本消息: content=马山..., user=WeiJueSen 2026-01-09 10:26:11 - gx_gp_monitor.wechat.message_handler - INFO - 处理文本消息: 马山, user: WeiJueSen 2026-01-09 10:26:11 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 关键词搜索: ['马山'] 2026-01-09 10:26:11 - gx_gp_monitor.main - INFO - 开始执行搜索任务 (手动搜索: True) 2026-01-09 10:26:11 - gx_gp_monitor.core.reliability - INFO - 健康检查通过 2026-01-09 10:26:11 - gx_gp_monitor.crawler.spider - INFO - 开始爬取 13 个公告来源 2026-01-09 10:26:11 - gx_gp_monitor - INFO - 开始爬取 采购公告 2026-01-09 10:26:12 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:26:12 - gx_gp_monitor - INFO - 采购公告 爬取完成,共获取 100 条公告,耗时 0.52秒 2026-01-09 10:26:12 - gx_gp_monitor - INFO - 开始爬取 结果公告 2026-01-09 10:26:12 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:26:12 - gx_gp_monitor - INFO - 结果公告 爬取完成,共获取 100 条公告,耗时 0.22秒 2026-01-09 10:26:12 - gx_gp_monitor - INFO - 开始爬取 合同公告 2026-01-09 10:26:12 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:26:12 - gx_gp_monitor - INFO - 合同公告 爬取完成,共获取 100 条公告,耗时 0.25秒 2026-01-09 10:26:12 - gx_gp_monitor - INFO - 开始爬取 更正公告 2026-01-09 10:26:12 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:26:12 - gx_gp_monitor - INFO - 更正公告 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 10:26:12 - gx_gp_monitor - INFO - 开始爬取 招标文件预公示 2026-01-09 10:26:13 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:26:13 - gx_gp_monitor - INFO - 招标文件预公示 爬取完成,共获取 100 条公告,耗时 0.16秒 2026-01-09 10:26:13 - gx_gp_monitor - INFO - 开始爬取 单一来源公示 2026-01-09 10:26:13 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:26:13 - gx_gp_monitor - INFO - 单一来源公示 爬取完成,共获取 100 条公告,耗时 0.17秒 2026-01-09 10:26:13 - gx_gp_monitor - INFO - 开始爬取 电子卖场公示 2026-01-09 10:26:13 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:26:13 - gx_gp_monitor - INFO - 电子卖场公示 爬取完成,共获取 100 条公告,耗时 0.33秒 2026-01-09 10:26:13 - gx_gp_monitor - INFO - 开始爬取 履约验收公示 2026-01-09 10:26:13 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:26:13 - gx_gp_monitor - INFO - 履约验收公示 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 10:26:13 - gx_gp_monitor - INFO - 开始爬取 工程类公告 2026-01-09 10:26:14 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:26:14 - gx_gp_monitor - INFO - 工程类公告 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 10:26:14 - gx_gp_monitor - INFO - 开始爬取 框架协议征集公告 2026-01-09 10:26:14 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:26:14 - gx_gp_monitor - INFO - 框架协议征集公告 爬取完成,共获取 100 条公告,耗时 0.23秒 2026-01-09 10:26:14 - gx_gp_monitor - INFO - 开始爬取 框架协议入围结果公告 2026-01-09 10:26:14 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:26:14 - gx_gp_monitor - INFO - 框架协议入围结果公告 爬取完成,共获取 100 条公告,耗时 0.17秒 2026-01-09 10:26:14 - gx_gp_monitor - INFO - 开始爬取 框架协议成交结果汇总公告 2026-01-09 10:26:14 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:26:14 - gx_gp_monitor - INFO - 框架协议成交结果汇总公告 爬取完成,共获取 100 条公告,耗时 0.16秒 2026-01-09 10:26:14 - gx_gp_monitor - INFO - 开始爬取 采购意向公开 2026-01-09 10:26:14 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:26:14 - gx_gp_monitor - INFO - 采购意向公开 爬取完成,共获取 100 条公告,耗时 0.24秒 2026-01-09 10:26:14 - gx_gp_monitor.crawler.spider - INFO - 爬取完成: 共处理 13 个来源,成功 13 个,失败 0 个,获取 1300 条公告 2026-01-09 10:26:14 - gx_gp_monitor.main - INFO - 搜索到 1300 条原始公告 2026-01-09 10:26:14 - gx_gp_monitor.main - INFO - 手动搜索模式:跳过数据库保存 2026-01-09 10:26:14 - gx_gp_monitor.filters.filters - INFO - 日期筛选: 1300 -> 175 条公告 2026-01-09 10:26:14 - gx_gp_monitor.filters.filters - INFO - 关键词筛选: 175 -> 2 条公告 2026-01-09 10:26:14 - gx_gp_monitor.filters.filters - INFO - 来源筛选: 2 -> 2 条公告 2026-01-09 10:26:14 - gx_gp_monitor.main - INFO - 筛选后剩余 2 条公告 2026-01-09 10:26:14 - gx_gp_monitor.main - INFO - 手动爬取模式:跳过筛选后公告的数据库保存 2026-01-09 10:26:14 - gx_gp_monitor.main - INFO - 爬取任务完成: {'success': True, 'total_crawled': 1300, 'filtered': 2, 'saved': 0, 'markdown_generated': False, 'notification_sent': True, 'filter_stats': {'keyword_filtered': 173, 'date_filtered': 1125, 'duplicate_filtered': 0, 'source_filtered': 0}, 'filtered_announcements': [Announcement(id=None, title='关于打印/复印纸的网上超市合同公告', publish_date=datetime.datetime(2026, 1, 9, 9, 53, 47), purchase_name='马山县卫生健康局', content_url='https://zfcg.gxzf.gov.cn/site/detail?parentId=66485&articleId=TQ8JBxuEbH10KU93ffGNUQ==', source_code='ZcyAnnouncement7', source_name='电子卖场公示', announcement_type=, crawled_at=datetime.datetime(2026, 1, 9, 10, 26, 13, 304523), created_at=None, updated_at=None, content_hash='406c71dd23410b265f2776eef85bddc7', keyword_matched=True, date_filtered=True, is_new=True, is_today=True), Announcement(id=None, title='马山县疾病预防控制中心[2181801000007961838]马山县龙之都汽车服务有限公司2025-2026年马山县县本级预算单位公务车辆维修、保养服务框架协议采购的验收公告', publish_date=datetime.datetime(2026, 1, 9, 9, 33, 27), purchase_name='马山县疾病预防控制中心', content_url='https://zfcg.gxzf.gov.cn/site/detail?parentId=66485&articleId=MiIzDm+fgMeYY8CH5dIPRA==', source_code='ZcyAnnouncement10', source_name='履约验收公示', announcement_type=, crawled_at=datetime.datetime(2026, 1, 9, 10, 26, 13, 633593), created_at=None, updated_at=None, content_hash='f22c9ba4ff8375192b93c24e1a2901df', keyword_matched=True, date_filtered=True, is_new=True, is_today=True)]} {address space usage: 248066048 bytes/236MB} {rss usage: 61984768 bytes/59MB} [pid: 1807174|app: 0|req: 5/7] 183.47.117.101 () {36 vars in 679 bytes} [Fri Jan 9 10:26:11 2026] POST /api/v1/wechat/callback?msg_signature=79e58abff8031c45f7d7639552e7e693239370b0×tamp=1767925571&nonce=1768415184 => generated 710 bytes in 3234 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 0) Fri Jan 9 10:26:39 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:26:39 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:26:39 2026 - gateway "uWSGI http 1" has been buried (pid: 1807177) Fri Jan 9 10:26:39 2026 - ...gracefully killing workers... Fri Jan 9 10:26:39 2026 - Gracefully killing worker 2 (pid: 1807174)... Fri Jan 9 10:26:39 2026 - Gracefully killing worker 1 (pid: 1807577)... Fri Jan 9 10:26:40 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:26:40 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:26:40 2026 - binary reloading uWSGI... Fri Jan 9 10:26:40 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:26:40 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:26:40 2026 - found fd 4 mapped to socket 0 (127.0.0.1:46169) Fri Jan 9 10:26:40 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:26:40 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:26:40 2026] *** Fri Jan 9 10:26:40 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:26:40 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:26:40 2026 - nodename: ubserver Fri Jan 9 10:26:40 2026 - machine: x86_64 Fri Jan 9 10:26:40 2026 - clock source: unix Fri Jan 9 10:26:40 2026 - pcre jit disabled Fri Jan 9 10:26:40 2026 - detected number of CPU cores: 12 Fri Jan 9 10:26:40 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:26:40 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:26:40 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:26:40 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:26:40 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:26:40 2026 - your processes number limit is 61306 Fri Jan 9 10:26:40 2026 - your memory page size is 4096 bytes Fri Jan 9 10:26:40 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:26:40 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:26:40 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:26:40 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:26:40 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:26:40 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:33603 (port auto-assigned) fd 3 Fri Jan 9 10:26:40 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:26:40 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:26:40 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:26:40 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:26:40 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:26:40 2026 - Python main interpreter initialized at 0x7ff54c352d10 Fri Jan 9 10:26:40 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:26:40 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:26:40 2026 - python threads support enabled Fri Jan 9 10:26:40 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:26:40 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:26:40 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:26:40 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:26:40 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:26:40 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:26:40 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x7ff54c352d10 pid: 1782404 (default app) Fri Jan 9 10:26:40 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:26:40 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:26:40 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:26:40 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:26:40 2026 - spawned uWSGI worker 1 (pid: 1815128, cores: 2) Fri Jan 9 10:26:40 2026 - spawned uWSGI worker 2 (pid: 1815129, cores: 2) Fri Jan 9 10:26:40 2026 - spawned uWSGI http 1 (pid: 1815134) Fri Jan 9 10:26:40 2026 - Python auto-reloader enabled Fri Jan 9 10:26:58 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:26:58 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:26:58 2026 - gateway "uWSGI http 1" has been buried (pid: 1815134) Fri Jan 9 10:26:58 2026 - ...gracefully killing workers... Fri Jan 9 10:26:58 2026 - Gracefully killing worker 1 (pid: 1815128)... Fri Jan 9 10:26:58 2026 - Gracefully killing worker 2 (pid: 1815129)... Fri Jan 9 10:26:59 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:26:59 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:26:59 2026 - binary reloading uWSGI... Fri Jan 9 10:26:59 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:26:59 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:26:59 2026 - found fd 3 mapped to socket 0 (127.0.0.1:33603) Fri Jan 9 10:26:59 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:26:59 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:26:59 2026] *** Fri Jan 9 10:26:59 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:26:59 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:26:59 2026 - nodename: ubserver Fri Jan 9 10:26:59 2026 - machine: x86_64 Fri Jan 9 10:26:59 2026 - clock source: unix Fri Jan 9 10:26:59 2026 - pcre jit disabled Fri Jan 9 10:26:59 2026 - detected number of CPU cores: 12 Fri Jan 9 10:26:59 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:26:59 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:26:59 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:26:59 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:26:59 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:26:59 2026 - your processes number limit is 61306 Fri Jan 9 10:26:59 2026 - your memory page size is 4096 bytes Fri Jan 9 10:26:59 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:26:59 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:26:59 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:26:59 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:26:59 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:26:59 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:34087 (port auto-assigned) fd 4 Fri Jan 9 10:26:59 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:26:59 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:26:59 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:26:59 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:26:59 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:26:59 2026 - Python main interpreter initialized at 0x70eb6dd52d10 Fri Jan 9 10:26:59 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:26:59 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:26:59 2026 - python threads support enabled Fri Jan 9 10:26:59 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:26:59 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:26:59 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:26:59 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:26:59 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:26:59 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:26:59 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x70eb6dd52d10 pid: 1782404 (default app) Fri Jan 9 10:26:59 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:26:59 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:26:59 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:26:59 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:26:59 2026 - spawned uWSGI worker 1 (pid: 1815194, cores: 2) Fri Jan 9 10:26:59 2026 - spawned uWSGI worker 2 (pid: 1815197, cores: 2) Fri Jan 9 10:26:59 2026 - spawned uWSGI http 1 (pid: 1815198) Fri Jan 9 10:26:59 2026 - Python auto-reloader enabled Fri Jan 9 10:27:10 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:27:10 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:27:10 2026 - gateway "uWSGI http 1" has been buried (pid: 1815198) Fri Jan 9 10:27:10 2026 - ...gracefully killing workers... Fri Jan 9 10:27:10 2026 - Gracefully killing worker 1 (pid: 1815194)... Fri Jan 9 10:27:10 2026 - Gracefully killing worker 2 (pid: 1815197)... Fri Jan 9 10:27:11 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:27:11 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:27:11 2026 - binary reloading uWSGI... Fri Jan 9 10:27:11 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:27:11 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:27:11 2026 - found fd 4 mapped to socket 0 (127.0.0.1:34087) Fri Jan 9 10:27:11 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:27:11 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:27:11 2026] *** Fri Jan 9 10:27:11 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:27:11 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:27:11 2026 - nodename: ubserver Fri Jan 9 10:27:11 2026 - machine: x86_64 Fri Jan 9 10:27:11 2026 - clock source: unix Fri Jan 9 10:27:11 2026 - pcre jit disabled Fri Jan 9 10:27:11 2026 - detected number of CPU cores: 12 Fri Jan 9 10:27:11 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:27:11 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:27:11 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:27:11 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:27:11 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:27:11 2026 - your processes number limit is 61306 Fri Jan 9 10:27:11 2026 - your memory page size is 4096 bytes Fri Jan 9 10:27:11 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:27:11 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:27:11 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:27:11 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:27:11 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:27:11 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:34323 (port auto-assigned) fd 3 Fri Jan 9 10:27:11 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:27:11 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:27:11 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:27:11 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:27:11 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:27:11 2026 - Python main interpreter initialized at 0x75f740b52d10 Fri Jan 9 10:27:11 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:27:11 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:27:11 2026 - python threads support enabled Fri Jan 9 10:27:11 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:27:11 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:27:11 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:27:11 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:27:11 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:27:11 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:27:11 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x75f740b52d10 pid: 1782404 (default app) Fri Jan 9 10:27:11 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:27:11 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:27:11 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:27:11 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:27:11 2026 - spawned uWSGI worker 1 (pid: 1815286, cores: 2) Fri Jan 9 10:27:11 2026 - spawned uWSGI worker 2 (pid: 1815287, cores: 2) Fri Jan 9 10:27:11 2026 - spawned uWSGI http 1 (pid: 1815291) Fri Jan 9 10:27:11 2026 - Python auto-reloader enabled Fri Jan 9 10:27:55 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:27:55 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:27:55 2026 - gateway "uWSGI http 1" has been buried (pid: 1815291) Fri Jan 9 10:27:55 2026 - ...gracefully killing workers... Fri Jan 9 10:27:55 2026 - Gracefully killing worker 2 (pid: 1815287)... Fri Jan 9 10:27:55 2026 - Gracefully killing worker 1 (pid: 1815286)... Fri Jan 9 10:27:56 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:27:56 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:27:56 2026 - binary reloading uWSGI... Fri Jan 9 10:27:56 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:27:56 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:27:56 2026 - found fd 3 mapped to socket 0 (127.0.0.1:34323) Fri Jan 9 10:27:56 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:27:56 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:27:56 2026] *** Fri Jan 9 10:27:56 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:27:56 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:27:56 2026 - nodename: ubserver Fri Jan 9 10:27:56 2026 - machine: x86_64 Fri Jan 9 10:27:56 2026 - clock source: unix Fri Jan 9 10:27:56 2026 - pcre jit disabled Fri Jan 9 10:27:56 2026 - detected number of CPU cores: 12 Fri Jan 9 10:27:56 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:27:56 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:27:56 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:27:56 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:27:56 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:27:56 2026 - your processes number limit is 61306 Fri Jan 9 10:27:56 2026 - your memory page size is 4096 bytes Fri Jan 9 10:27:56 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:27:56 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:27:56 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:27:56 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:27:56 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:27:56 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:37353 (port auto-assigned) fd 4 Fri Jan 9 10:27:56 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:27:56 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:27:56 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:27:56 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:27:56 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:27:56 2026 - Python main interpreter initialized at 0x70c237752d10 Fri Jan 9 10:27:56 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:27:56 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:27:56 2026 - python threads support enabled Fri Jan 9 10:27:56 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:27:56 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:27:56 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:27:56 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:27:57 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:27:57 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:27:57 2026 - WSGI app 0 (mountpoint='') ready in 1 seconds on interpreter 0x70c237752d10 pid: 1782404 (default app) Fri Jan 9 10:27:57 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:27:57 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:27:57 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:27:57 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:27:57 2026 - spawned uWSGI worker 1 (pid: 1817209, cores: 2) Fri Jan 9 10:27:57 2026 - spawned uWSGI worker 2 (pid: 1817210, cores: 2) Fri Jan 9 10:27:57 2026 - spawned uWSGI http 1 (pid: 1817215) Fri Jan 9 10:27:57 2026 - Python auto-reloader enabled 2026-01-09 10:28:19 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 10:28:19 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: YS7RBuNL221aid+SSC+nfDV0AAkZe5xnflVEtA7MzaK+UyqoW9... 2026-01-09 10:28:19 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 1f8d0c119a8bcbf6913ed06e9991c3166b6bbb18 2026-01-09 10:28:19 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 1f8d0c119a8bcbf6913ed06e9991c3166b6bbb18 2026-01-09 10:28:19 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 10:28:19 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 10:28:19 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=event 2026-01-09 10:28:19 - gx_gp_monitor.wechat.callback_server - INFO - 处理事件消息: event=click, event_key=latest_news, user=WeiJueSen 2026-01-09 10:28:19 - gx_gp_monitor.wechat.message_handler - INFO - 处理事件: click, key: latest_news, user: WeiJueSen 2026-01-09 10:28:19 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 请求最新公告 {address space usage: 233709568 bytes/222MB} {rss usage: 38821888 bytes/37MB} [pid: 1817210|app: 0|req: 1/1] 183.47.98.227 () {36 vars in 677 bytes} [Fri Jan 9 10:28:19 2026] POST /api/v1/wechat/callback?msg_signature=1f8d0c119a8bcbf6913ed06e9991c3166b6bbb18×tamp=1767925699&nonce=1768209024 => generated 1394 bytes in 6 msecs (HTTP/1.1 200) 2 headers in 81 bytes (1 switches on core 0) 2026-01-09 10:28:25 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 428 2026-01-09 10:28:25 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: zozV9O7eNAXcdK29PH30oG9UiS7hzONGFKXLc8G2pk0fhAFnIz... 2026-01-09 10:28:25 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 10442844f4f723747edcf1925bed5e7903432b59 2026-01-09 10:28:25 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 10442844f4f723747edcf1925bed5e7903432b59 2026-01-09 10:28:25 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 10:28:25 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 10:28:25 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=text 2026-01-09 10:28:25 - gx_gp_monitor.wechat.callback_server - INFO - 处理文本消息: content=1..., user=WeiJueSen 2026-01-09 10:28:25 - gx_gp_monitor.wechat.message_handler - INFO - 处理文本消息: 1, user: WeiJueSen 2026-01-09 10:28:25 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 选择公告来源: 1 2026-01-09 10:28:25 - gx_gp_monitor.core.database - INFO - 数据库连接池初始化成功 {address space usage: 239050752 bytes/227MB} {rss usage: 48840704 bytes/46MB} [pid: 1817209|app: 0|req: 1/2] 14.116.241.251 () {36 vars in 679 bytes} [Fri Jan 9 10:28:25 2026] POST /api/v1/wechat/callback?msg_signature=10442844f4f723747edcf1925bed5e7903432b59×tamp=1767925705&nonce=1768668050 => generated 2502 bytes in 69 msecs (HTTP/1.1 200) 2 headers in 81 bytes (1 switches on core 0) Fri Jan 9 10:28:49 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:28:49 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:28:49 2026 - gateway "uWSGI http 1" has been buried (pid: 1817215) Fri Jan 9 10:28:49 2026 - ...gracefully killing workers... Fri Jan 9 10:28:49 2026 - Gracefully killing worker 1 (pid: 1817209)... Fri Jan 9 10:28:49 2026 - Gracefully killing worker 2 (pid: 1817210)... Fri Jan 9 10:28:50 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:28:50 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:28:50 2026 - binary reloading uWSGI... Fri Jan 9 10:28:50 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:28:50 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:28:50 2026 - found fd 4 mapped to socket 0 (127.0.0.1:37353) Fri Jan 9 10:28:50 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:28:50 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:28:50 2026] *** Fri Jan 9 10:28:50 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:28:50 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:28:50 2026 - nodename: ubserver Fri Jan 9 10:28:50 2026 - machine: x86_64 Fri Jan 9 10:28:50 2026 - clock source: unix Fri Jan 9 10:28:50 2026 - pcre jit disabled Fri Jan 9 10:28:50 2026 - detected number of CPU cores: 12 Fri Jan 9 10:28:50 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:28:50 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:28:50 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:28:50 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:28:50 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:28:50 2026 - your processes number limit is 61306 Fri Jan 9 10:28:50 2026 - your memory page size is 4096 bytes Fri Jan 9 10:28:50 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:28:50 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:28:50 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:28:50 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:28:50 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:28:50 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:40261 (port auto-assigned) fd 3 Fri Jan 9 10:28:50 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:28:50 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:28:50 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:28:50 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:28:50 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:28:50 2026 - Python main interpreter initialized at 0x77f978f52d10 Fri Jan 9 10:28:50 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:28:50 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:28:50 2026 - python threads support enabled Fri Jan 9 10:28:50 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:28:50 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:28:50 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:28:50 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:28:50 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:28:50 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:28:50 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x77f978f52d10 pid: 1782404 (default app) Fri Jan 9 10:28:50 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:28:50 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:28:50 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:28:50 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:28:50 2026 - spawned uWSGI worker 1 (pid: 1817590, cores: 2) Fri Jan 9 10:28:50 2026 - spawned uWSGI worker 2 (pid: 1817591, cores: 2) Fri Jan 9 10:28:50 2026 - spawned uWSGI http 1 (pid: 1817594) Fri Jan 9 10:28:50 2026 - Python auto-reloader enabled Fri Jan 9 10:32:28 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:32:28 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:32:28 2026 - gateway "uWSGI http 1" has been buried (pid: 1817594) Fri Jan 9 10:32:28 2026 - ...gracefully killing workers... Fri Jan 9 10:32:28 2026 - Gracefully killing worker 2 (pid: 1817591)... Fri Jan 9 10:32:28 2026 - Gracefully killing worker 1 (pid: 1817590)... Fri Jan 9 10:32:29 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:32:29 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:32:29 2026 - binary reloading uWSGI... Fri Jan 9 10:32:29 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:32:29 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:32:29 2026 - found fd 3 mapped to socket 0 (127.0.0.1:40261) Fri Jan 9 10:32:29 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:32:29 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:32:29 2026] *** Fri Jan 9 10:32:29 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:32:29 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:32:29 2026 - nodename: ubserver Fri Jan 9 10:32:29 2026 - machine: x86_64 Fri Jan 9 10:32:29 2026 - clock source: unix Fri Jan 9 10:32:29 2026 - pcre jit disabled Fri Jan 9 10:32:29 2026 - detected number of CPU cores: 12 Fri Jan 9 10:32:29 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:32:29 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:32:29 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:32:29 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:32:29 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:32:29 2026 - your processes number limit is 61306 Fri Jan 9 10:32:29 2026 - your memory page size is 4096 bytes Fri Jan 9 10:32:29 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:32:29 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:32:29 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:32:29 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:32:29 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:32:29 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:34655 (port auto-assigned) fd 4 Fri Jan 9 10:32:29 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:32:29 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:32:29 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:32:29 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:32:29 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:32:29 2026 - Python main interpreter initialized at 0x7d3c1a752d10 Fri Jan 9 10:32:29 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:32:29 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:32:29 2026 - python threads support enabled Fri Jan 9 10:32:29 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:32:29 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:32:29 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:32:29 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:32:29 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:32:29 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:32:29 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x7d3c1a752d10 pid: 1782404 (default app) Fri Jan 9 10:32:29 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:32:29 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:32:29 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:32:29 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:32:29 2026 - spawned uWSGI worker 1 (pid: 1818793, cores: 2) Fri Jan 9 10:32:29 2026 - spawned uWSGI worker 2 (pid: 1818794, cores: 2) Fri Jan 9 10:32:29 2026 - spawned uWSGI http 1 (pid: 1818798) Fri Jan 9 10:32:29 2026 - Python auto-reloader enabled Fri Jan 9 10:32:33 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:32:33 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:32:33 2026 - gateway "uWSGI http 1" has been buried (pid: 1818798) Fri Jan 9 10:32:33 2026 - ...gracefully killing workers... Fri Jan 9 10:32:33 2026 - Gracefully killing worker 1 (pid: 1818793)... Fri Jan 9 10:32:33 2026 - Gracefully killing worker 2 (pid: 1818794)... Fri Jan 9 10:32:34 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:32:34 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:32:34 2026 - binary reloading uWSGI... Fri Jan 9 10:32:34 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:32:34 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:32:34 2026 - found fd 4 mapped to socket 0 (127.0.0.1:34655) Fri Jan 9 10:32:34 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:32:34 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:32:34 2026] *** Fri Jan 9 10:32:34 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:32:34 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:32:34 2026 - nodename: ubserver Fri Jan 9 10:32:34 2026 - machine: x86_64 Fri Jan 9 10:32:34 2026 - clock source: unix Fri Jan 9 10:32:34 2026 - pcre jit disabled Fri Jan 9 10:32:34 2026 - detected number of CPU cores: 12 Fri Jan 9 10:32:34 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:32:34 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:32:34 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:32:34 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:32:34 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:32:34 2026 - your processes number limit is 61306 Fri Jan 9 10:32:34 2026 - your memory page size is 4096 bytes Fri Jan 9 10:32:34 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:32:34 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:32:34 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:32:34 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:32:34 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:32:34 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:38431 (port auto-assigned) fd 3 Fri Jan 9 10:32:34 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:32:34 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:32:34 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:32:34 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:32:34 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:32:34 2026 - Python main interpreter initialized at 0x760172f52d10 Fri Jan 9 10:32:34 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:32:34 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:32:34 2026 - python threads support enabled Fri Jan 9 10:32:34 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:32:34 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:32:34 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:32:34 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:32:34 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:32:34 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:32:34 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x760172f52d10 pid: 1782404 (default app) Fri Jan 9 10:32:34 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:32:34 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:32:34 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:32:34 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:32:34 2026 - spawned uWSGI worker 1 (pid: 1818808, cores: 2) Fri Jan 9 10:32:34 2026 - spawned uWSGI worker 2 (pid: 1818809, cores: 2) Fri Jan 9 10:32:34 2026 - spawned uWSGI http 1 (pid: 1818812) Fri Jan 9 10:32:34 2026 - Python auto-reloader enabled Fri Jan 9 10:32:38 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:32:38 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:32:38 2026 - gateway "uWSGI http 1" has been buried (pid: 1818812) Fri Jan 9 10:32:38 2026 - ...gracefully killing workers... Fri Jan 9 10:32:38 2026 - Gracefully killing worker 1 (pid: 1818808)... Fri Jan 9 10:32:38 2026 - Gracefully killing worker 2 (pid: 1818809)... Fri Jan 9 10:32:39 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:32:39 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:32:39 2026 - binary reloading uWSGI... Fri Jan 9 10:32:39 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:32:39 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:32:39 2026 - found fd 3 mapped to socket 0 (127.0.0.1:38431) Fri Jan 9 10:32:39 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:32:39 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:32:39 2026] *** Fri Jan 9 10:32:39 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:32:39 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:32:39 2026 - nodename: ubserver Fri Jan 9 10:32:39 2026 - machine: x86_64 Fri Jan 9 10:32:39 2026 - clock source: unix Fri Jan 9 10:32:39 2026 - pcre jit disabled Fri Jan 9 10:32:39 2026 - detected number of CPU cores: 12 Fri Jan 9 10:32:39 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:32:39 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:32:39 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:32:39 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:32:39 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:32:39 2026 - your processes number limit is 61306 Fri Jan 9 10:32:39 2026 - your memory page size is 4096 bytes Fri Jan 9 10:32:39 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:32:39 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:32:39 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:32:39 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:32:39 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:32:39 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:41473 (port auto-assigned) fd 4 Fri Jan 9 10:32:39 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:32:39 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:32:39 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:32:39 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:32:39 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:32:39 2026 - Python main interpreter initialized at 0x79b9d4152d10 Fri Jan 9 10:32:39 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:32:39 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:32:39 2026 - python threads support enabled Fri Jan 9 10:32:39 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:32:39 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:32:39 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:32:39 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:32:40 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:32:40 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:32:40 2026 - WSGI app 0 (mountpoint='') ready in 1 seconds on interpreter 0x79b9d4152d10 pid: 1782404 (default app) Fri Jan 9 10:32:40 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:32:40 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:32:40 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:32:40 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:32:40 2026 - spawned uWSGI worker 1 (pid: 1818826, cores: 2) Fri Jan 9 10:32:40 2026 - spawned uWSGI worker 2 (pid: 1818827, cores: 2) Fri Jan 9 10:32:40 2026 - spawned uWSGI http 1 (pid: 1818831) Fri Jan 9 10:32:40 2026 - Python auto-reloader enabled Fri Jan 9 10:32:44 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:32:44 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:32:44 2026 - gateway "uWSGI http 1" has been buried (pid: 1818831) Fri Jan 9 10:32:44 2026 - ...gracefully killing workers... Fri Jan 9 10:32:44 2026 - Gracefully killing worker 2 (pid: 1818827)... Fri Jan 9 10:32:44 2026 - Gracefully killing worker 1 (pid: 1818826)... Fri Jan 9 10:32:45 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:32:45 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:32:45 2026 - binary reloading uWSGI... Fri Jan 9 10:32:45 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:32:45 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:32:45 2026 - found fd 4 mapped to socket 0 (127.0.0.1:41473) Fri Jan 9 10:32:45 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:32:45 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:32:45 2026] *** Fri Jan 9 10:32:45 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:32:45 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:32:45 2026 - nodename: ubserver Fri Jan 9 10:32:45 2026 - machine: x86_64 Fri Jan 9 10:32:45 2026 - clock source: unix Fri Jan 9 10:32:45 2026 - pcre jit disabled Fri Jan 9 10:32:45 2026 - detected number of CPU cores: 12 Fri Jan 9 10:32:45 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:32:45 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:32:45 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:32:45 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:32:45 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:32:45 2026 - your processes number limit is 61306 Fri Jan 9 10:32:45 2026 - your memory page size is 4096 bytes Fri Jan 9 10:32:45 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:32:45 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:32:45 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:32:45 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:32:45 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:32:45 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:45769 (port auto-assigned) fd 3 Fri Jan 9 10:32:45 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:32:45 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:32:45 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:32:45 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:32:45 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:32:45 2026 - Python main interpreter initialized at 0x7a69a6152d10 Fri Jan 9 10:32:45 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:32:45 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:32:45 2026 - python threads support enabled Fri Jan 9 10:32:45 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:32:45 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:32:45 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:32:45 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:32:45 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:32:45 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:32:45 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x7a69a6152d10 pid: 1782404 (default app) Fri Jan 9 10:32:45 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:32:45 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:32:45 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:32:45 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:32:45 2026 - spawned uWSGI worker 1 (pid: 1818869, cores: 2) Fri Jan 9 10:32:45 2026 - spawned uWSGI worker 2 (pid: 1818870, cores: 2) Fri Jan 9 10:32:45 2026 - spawned uWSGI http 1 (pid: 1818873) Fri Jan 9 10:32:45 2026 - Python auto-reloader enabled Fri Jan 9 10:33:09 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:33:09 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:33:09 2026 - gateway "uWSGI http 1" has been buried (pid: 1818873) Fri Jan 9 10:33:09 2026 - ...gracefully killing workers... Fri Jan 9 10:33:09 2026 - Gracefully killing worker 2 (pid: 1818870)... Fri Jan 9 10:33:09 2026 - Gracefully killing worker 1 (pid: 1818869)... Fri Jan 9 10:33:10 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:33:10 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:33:10 2026 - binary reloading uWSGI... Fri Jan 9 10:33:10 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:33:10 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:33:10 2026 - found fd 3 mapped to socket 0 (127.0.0.1:45769) Fri Jan 9 10:33:10 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:33:10 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:33:10 2026] *** Fri Jan 9 10:33:10 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:33:10 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:33:10 2026 - nodename: ubserver Fri Jan 9 10:33:10 2026 - machine: x86_64 Fri Jan 9 10:33:10 2026 - clock source: unix Fri Jan 9 10:33:10 2026 - pcre jit disabled Fri Jan 9 10:33:10 2026 - detected number of CPU cores: 12 Fri Jan 9 10:33:10 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:33:10 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:33:10 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:33:10 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:33:10 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:33:10 2026 - your processes number limit is 61306 Fri Jan 9 10:33:10 2026 - your memory page size is 4096 bytes Fri Jan 9 10:33:10 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:33:10 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:33:10 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:33:10 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:33:10 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:33:10 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:43071 (port auto-assigned) fd 4 Fri Jan 9 10:33:10 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:33:10 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:33:10 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:33:10 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:33:10 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:33:10 2026 - Python main interpreter initialized at 0x73522cb52d10 Fri Jan 9 10:33:10 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:33:10 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:33:10 2026 - python threads support enabled Fri Jan 9 10:33:10 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:33:10 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:33:10 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:33:10 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:33:10 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:33:10 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:33:10 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x73522cb52d10 pid: 1782404 (default app) Fri Jan 9 10:33:10 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:33:10 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:33:10 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:33:10 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:33:10 2026 - spawned uWSGI worker 1 (pid: 1819074, cores: 2) Fri Jan 9 10:33:10 2026 - spawned uWSGI worker 2 (pid: 1819075, cores: 2) Fri Jan 9 10:33:10 2026 - spawned uWSGI http 1 (pid: 1819078) Fri Jan 9 10:33:10 2026 - Python auto-reloader enabled Fri Jan 9 10:33:20 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:33:20 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:33:20 2026 - gateway "uWSGI http 1" has been buried (pid: 1819078) Fri Jan 9 10:33:20 2026 - ...gracefully killing workers... Fri Jan 9 10:33:20 2026 - Gracefully killing worker 2 (pid: 1819075)... Fri Jan 9 10:33:20 2026 - Gracefully killing worker 1 (pid: 1819074)... Fri Jan 9 10:33:21 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:33:21 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:33:21 2026 - binary reloading uWSGI... Fri Jan 9 10:33:21 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:33:21 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:33:21 2026 - found fd 4 mapped to socket 0 (127.0.0.1:43071) Fri Jan 9 10:33:21 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:33:21 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:33:21 2026] *** Fri Jan 9 10:33:21 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:33:21 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:33:21 2026 - nodename: ubserver Fri Jan 9 10:33:21 2026 - machine: x86_64 Fri Jan 9 10:33:21 2026 - clock source: unix Fri Jan 9 10:33:21 2026 - pcre jit disabled Fri Jan 9 10:33:21 2026 - detected number of CPU cores: 12 Fri Jan 9 10:33:21 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:33:21 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:33:21 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:33:21 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:33:21 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:33:21 2026 - your processes number limit is 61306 Fri Jan 9 10:33:21 2026 - your memory page size is 4096 bytes Fri Jan 9 10:33:21 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:33:21 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:33:21 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:33:21 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:33:21 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:33:21 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:39103 (port auto-assigned) fd 3 Fri Jan 9 10:33:21 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:33:21 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:33:21 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:33:21 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:33:21 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:33:21 2026 - Python main interpreter initialized at 0x77bb83d52d10 Fri Jan 9 10:33:21 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:33:21 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:33:21 2026 - python threads support enabled Fri Jan 9 10:33:21 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:33:21 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:33:21 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:33:21 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:33:21 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:33:21 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:33:21 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x77bb83d52d10 pid: 1782404 (default app) Fri Jan 9 10:33:21 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:33:21 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:33:21 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:33:21 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:33:21 2026 - spawned uWSGI worker 1 (pid: 1819123, cores: 2) Fri Jan 9 10:33:21 2026 - spawned uWSGI worker 2 (pid: 1819124, cores: 2) Fri Jan 9 10:33:21 2026 - spawned uWSGI http 1 (pid: 1819127) Fri Jan 9 10:33:21 2026 - Python auto-reloader enabled 2026-01-09 10:33:21 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 10:33:21 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: GTaNs33vwoJ+4/EMmi2BNZfvbY/oa9P3ETIoIEbaLtRRSObPM2... 2026-01-09 10:33:21 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: b164aac779ad641d764d7ca78e44d290891bda18 2026-01-09 10:33:21 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: b164aac779ad641d764d7ca78e44d290891bda18 2026-01-09 10:33:21 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 10:33:21 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 10:33:21 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=event 2026-01-09 10:33:21 - gx_gp_monitor.wechat.callback_server - INFO - 处理事件消息: event=click, event_key=latest_news, user=WeiJueSen 2026-01-09 10:33:21 - gx_gp_monitor.wechat.message_handler - INFO - 处理事件: click, key: latest_news, user: WeiJueSen 2026-01-09 10:33:21 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 请求最新公告 {address space usage: 233709568 bytes/222MB} {rss usage: 38711296 bytes/36MB} [pid: 1819123|app: 0|req: 1/1] 183.47.117.101 () {36 vars in 679 bytes} [Fri Jan 9 10:33:21 2026] POST /api/v1/wechat/callback?msg_signature=b164aac779ad641d764d7ca78e44d290891bda18×tamp=1767926001&nonce=1768620865 => generated 1478 bytes in 6 msecs (HTTP/1.1 200) 2 headers in 81 bytes (1 switches on core 0) 2026-01-09 10:33:32 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 428 2026-01-09 10:33:32 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: S1bfMrKOasqa288wweOEjK/5pKCyxvTfFasXMD4bcoNmS53AaP... 2026-01-09 10:33:32 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 0aab34f6a2cb370d6ead35df861f0e51b2305852 2026-01-09 10:33:32 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 0aab34f6a2cb370d6ead35df861f0e51b2305852 2026-01-09 10:33:32 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 10:33:32 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 10:33:32 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=text 2026-01-09 10:33:32 - gx_gp_monitor.wechat.callback_server - INFO - 处理文本消息: content=10..., user=WeiJueSen 2026-01-09 10:33:32 - gx_gp_monitor.wechat.message_handler - INFO - 处理文本消息: 10, user: WeiJueSen 2026-01-09 10:33:32 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 选择公告来源: 10 2026-01-09 10:33:32 - gx_gp_monitor.core.database - INFO - 数据库连接池初始化成功 {address space usage: 239050752 bytes/227MB} {rss usage: 48742400 bytes/46MB} [pid: 1819124|app: 0|req: 1/2] 183.47.98.168 () {36 vars in 678 bytes} [Fri Jan 9 10:33:32 2026] POST /api/v1/wechat/callback?msg_signature=0aab34f6a2cb370d6ead35df861f0e51b2305852×tamp=1767926012&nonce=1768658849 => generated 2590 bytes in 58 msecs (HTTP/1.1 200) 2 headers in 81 bytes (1 switches on core 0) 2026-01-09 10:34:31 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 10:34:31 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: SnmNv1JvgNwdi/3C/KcStmOJIpzxorxgaCGic2u6tdLzsYmnOk... 2026-01-09 10:34:31 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: feb8eef2ddccadec738c597383cb60ab7423765c 2026-01-09 10:34:31 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: feb8eef2ddccadec738c597383cb60ab7423765c 2026-01-09 10:34:31 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 10:34:31 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 10:34:31 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=event 2026-01-09 10:34:31 - gx_gp_monitor.wechat.callback_server - INFO - 处理事件消息: event=click, event_key=today_stats, user=WeiJueSen 2026-01-09 10:34:31 - gx_gp_monitor.wechat.message_handler - INFO - 处理事件: click, key: today_stats, user: WeiJueSen 2026-01-09 10:34:31 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 请求今日统计 2026-01-09 10:34:31 - gx_gp_monitor.main - INFO - === 广西政府采购网公告监控系统启动 === 2026-01-09 10:34:31 - gx_gp_monitor.main - INFO - 版本: 1.0.0 2026-01-09 10:34:31 - gx_gp_monitor.main - INFO - 配置文件: 默认配置 2026-01-09 10:34:31 - gx_gp_monitor.core.reliability - INFO - 健康检查通过 2026-01-09 10:34:31 - gx_gp_monitor.core.database - INFO - 数据库连接池初始化成功 2026-01-09 10:34:31 - gx_gp_monitor.core.database - INFO - 开始初始化数据库表结构 2026-01-09 10:34:31 - gx_gp_monitor.core.database - INFO - 数据库表结构初始化完成 2026-01-09 10:34:31 - gx_gp_monitor.storage.postgresql - INFO - 存储初始化完成 2026-01-09 10:34:31 - gx_gp_monitor.main - INFO - 应用初始化完成 {address space usage: 234758144 bytes/223MB} {rss usage: 47702016 bytes/45MB} [pid: 1819123|app: 0|req: 2/3] 183.47.98.227 () {36 vars in 678 bytes} [Fri Jan 9 10:34:31 2026] POST /api/v1/wechat/callback?msg_signature=feb8eef2ddccadec738c597383cb60ab7423765c×tamp=1767926071&nonce=1768471749 => generated 966 bytes in 237 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 1) 2026-01-09 10:34:38 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 10:34:38 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: rBvhsf9qEmvSA53kCTz/vZk1cJ7XeUAHXZHecKetaDMwG+c7ds... 2026-01-09 10:34:38 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: cd7d1cd61fa529ae42f14c64bb227705c5b263de 2026-01-09 10:34:38 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: cd7d1cd61fa529ae42f14c64bb227705c5b263de 2026-01-09 10:34:38 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 10:34:38 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 10:34:38 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=text 2026-01-09 10:34:38 - gx_gp_monitor.wechat.callback_server - INFO - 处理文本消息: content=马山..., user=WeiJueSen 2026-01-09 10:34:38 - gx_gp_monitor.wechat.message_handler - INFO - 处理文本消息: 马山, user: WeiJueSen 2026-01-09 10:34:38 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 关键词搜索: ['马山'] 2026-01-09 10:34:38 - gx_gp_monitor.main - INFO - === 广西政府采购网公告监控系统启动 === 2026-01-09 10:34:38 - gx_gp_monitor.main - INFO - 版本: 1.0.0 2026-01-09 10:34:38 - gx_gp_monitor.main - INFO - 配置文件: 默认配置 2026-01-09 10:34:38 - gx_gp_monitor.core.reliability - INFO - 健康检查通过 2026-01-09 10:34:38 - gx_gp_monitor.core.database - INFO - 开始初始化数据库表结构 2026-01-09 10:34:38 - gx_gp_monitor.core.database - INFO - 数据库表结构初始化完成 2026-01-09 10:34:38 - gx_gp_monitor.storage.postgresql - INFO - 存储初始化完成 2026-01-09 10:34:38 - gx_gp_monitor.main - INFO - 应用初始化完成 2026-01-09 10:34:38 - gx_gp_monitor.main - INFO - 开始执行搜索任务 (手动搜索: True) 2026-01-09 10:34:38 - gx_gp_monitor.crawler.spider - INFO - 开始爬取 13 个公告来源 2026-01-09 10:34:38 - gx_gp_monitor - INFO - 开始爬取 采购公告 2026-01-09 10:34:43 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 10:34:43 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: rBvhsf9qEmvSA53kCTz/vZk1cJ7XeUAHXZHecKetaDMwG+c7ds... 2026-01-09 10:34:43 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: cd7d1cd61fa529ae42f14c64bb227705c5b263de 2026-01-09 10:34:43 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: cd7d1cd61fa529ae42f14c64bb227705c5b263de 2026-01-09 10:34:43 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 10:34:43 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 10:34:43 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=text 2026-01-09 10:34:43 - gx_gp_monitor.wechat.callback_server - INFO - 处理文本消息: content=马山..., user=WeiJueSen 2026-01-09 10:34:43 - gx_gp_monitor.wechat.message_handler - INFO - 处理文本消息: 马山, user: WeiJueSen 2026-01-09 10:34:43 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 关键词搜索: ['马山'] 2026-01-09 10:34:43 - gx_gp_monitor.main - INFO - 开始执行搜索任务 (手动搜索: True) 2026-01-09 10:34:43 - gx_gp_monitor.crawler.spider - INFO - 开始爬取 13 个公告来源 2026-01-09 10:34:43 - gx_gp_monitor - INFO - 开始爬取 采购公告 2026-01-09 10:34:43 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:34:43 - gx_gp_monitor - INFO - 采购公告 爬取完成,共获取 100 条公告,耗时 0.43秒 2026-01-09 10:34:43 - gx_gp_monitor - INFO - 开始爬取 结果公告 2026-01-09 10:34:44 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:34:44 - gx_gp_monitor - INFO - 结果公告 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 10:34:44 - gx_gp_monitor - INFO - 开始爬取 合同公告 2026-01-09 10:34:44 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:34:44 - gx_gp_monitor - INFO - 合同公告 爬取完成,共获取 100 条公告,耗时 0.28秒 2026-01-09 10:34:44 - gx_gp_monitor - INFO - 开始爬取 更正公告 2026-01-09 10:34:44 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:34:44 - gx_gp_monitor - INFO - 更正公告 爬取完成,共获取 100 条公告,耗时 0.21秒 2026-01-09 10:34:44 - gx_gp_monitor - INFO - 开始爬取 招标文件预公示 2026-01-09 10:34:44 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:34:44 - gx_gp_monitor - INFO - 招标文件预公示 爬取完成,共获取 100 条公告,耗时 0.24秒 2026-01-09 10:34:44 - gx_gp_monitor - INFO - 开始爬取 单一来源公示 2026-01-09 10:34:45 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:34:45 - gx_gp_monitor - INFO - 单一来源公示 爬取完成,共获取 100 条公告,耗时 0.23秒 2026-01-09 10:34:45 - gx_gp_monitor - INFO - 开始爬取 电子卖场公示 2026-01-09 10:34:45 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:34:45 - gx_gp_monitor - INFO - 电子卖场公示 爬取完成,共获取 100 条公告,耗时 0.43秒 2026-01-09 10:34:45 - gx_gp_monitor - INFO - 开始爬取 履约验收公示 2026-01-09 10:34:45 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:34:45 - gx_gp_monitor - INFO - 履约验收公示 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 10:34:45 - gx_gp_monitor - INFO - 开始爬取 工程类公告 2026-01-09 10:34:45 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:34:45 - gx_gp_monitor - INFO - 工程类公告 爬取完成,共获取 100 条公告,耗时 0.17秒 2026-01-09 10:34:45 - gx_gp_monitor - INFO - 开始爬取 框架协议征集公告 2026-01-09 10:34:46 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:34:46 - gx_gp_monitor - INFO - 框架协议征集公告 爬取完成,共获取 100 条公告,耗时 0.22秒 2026-01-09 10:34:46 - gx_gp_monitor - INFO - 开始爬取 框架协议入围结果公告 2026-01-09 10:34:46 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:34:46 - gx_gp_monitor - INFO - 框架协议入围结果公告 爬取完成,共获取 100 条公告,耗时 0.25秒 2026-01-09 10:34:46 - gx_gp_monitor - INFO - 开始爬取 框架协议成交结果汇总公告 2026-01-09 10:34:46 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:34:46 - gx_gp_monitor - INFO - 框架协议成交结果汇总公告 爬取完成,共获取 100 条公告,耗时 0.22秒 2026-01-09 10:34:46 - gx_gp_monitor - INFO - 开始爬取 采购意向公开 2026-01-09 10:34:46 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:34:46 - gx_gp_monitor - INFO - 采购意向公开 爬取完成,共获取 100 条公告,耗时 0.17秒 2026-01-09 10:34:46 - gx_gp_monitor.crawler.spider - INFO - 爬取完成: 共处理 13 个来源,成功 13 个,失败 0 个,获取 1300 条公告 2026-01-09 10:34:46 - gx_gp_monitor.main - INFO - 搜索到 1300 条原始公告 2026-01-09 10:34:46 - gx_gp_monitor.main - INFO - 手动搜索模式:跳过数据库保存 2026-01-09 10:34:46 - gx_gp_monitor.filters.filters - INFO - 日期筛选: 1300 -> 193 条公告 2026-01-09 10:34:46 - gx_gp_monitor.filters.filters - INFO - 关键词筛选: 193 -> 2 条公告 2026-01-09 10:34:46 - gx_gp_monitor.filters.filters - INFO - 来源筛选: 2 -> 2 条公告 2026-01-09 10:34:46 - gx_gp_monitor.main - INFO - 筛选后剩余 2 条公告 2026-01-09 10:34:46 - gx_gp_monitor.main - INFO - 手动爬取模式:跳过筛选后公告的数据库保存 2026-01-09 10:34:46 - gx_gp_monitor.main - INFO - 爬取任务完成: {'success': True, 'total_crawled': 1300, 'filtered': 2, 'saved': 0, 'markdown_generated': False, 'notification_sent': True, 'filter_stats': {'keyword_filtered': 191, 'date_filtered': 1107, 'duplicate_filtered': 0, 'source_filtered': 0}, 'filtered_announcements': [Announcement(id=None, title='关于打印/复印纸的网上超市合同公告', publish_date=datetime.datetime(2026, 1, 9, 9, 53, 47), purchase_name='马山县卫生健康局', content_url='https://zfcg.gxzf.gov.cn/site/detail?parentId=66485&articleId=TQ8JBxuEbH10KU93ffGNUQ==', source_code='ZcyAnnouncement7', source_name='电子卖场公示', announcement_type=, crawled_at=datetime.datetime(2026, 1, 9, 10, 34, 45, 68742), created_at=None, updated_at=None, content_hash='406c71dd23410b265f2776eef85bddc7', keyword_matched=True, date_filtered=True, is_new=True, is_today=True), Announcement(id=None, title='马山县疾病预防控制中心[2181801000007961838]马山县龙之都汽车服务有限公司2025-2026年马山县县本级预算单位公务车辆维修、保养服务框架协议采购的验收公告', publish_date=datetime.datetime(2026, 1, 9, 9, 33, 27), purchase_name='马山县疾病预防控制中心', content_url='https://zfcg.gxzf.gov.cn/site/detail?parentId=66485&articleId=MiIzDm+fgMeYY8CH5dIPRA==', source_code='ZcyAnnouncement10', source_name='履约验收公示', announcement_type=, crawled_at=datetime.datetime(2026, 1, 9, 10, 34, 45, 497090), created_at=None, updated_at=None, content_hash='f22c9ba4ff8375192b93c24e1a2901df', keyword_matched=True, date_filtered=True, is_new=True, is_today=True)]} {address space usage: 250597376 bytes/238MB} {rss usage: 64647168 bytes/61MB} [pid: 1819124|app: 0|req: 3/4] 106.55.201.217 () {36 vars in 679 bytes} [Fri Jan 9 10:34:43 2026] POST /api/v1/wechat/callback?msg_signature=cd7d1cd61fa529ae42f14c64bb227705c5b263de×tamp=1767926078&nonce=1768275254 => generated 710 bytes in 3272 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 0) 2026-01-09 10:35:09 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:35:09 - gx_gp_monitor - INFO - 采购公告 爬取完成,共获取 100 条公告,耗时 30.51秒 2026-01-09 10:35:09 - gx_gp_monitor - INFO - 开始爬取 结果公告 2026-01-09 10:35:09 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:35:09 - gx_gp_monitor - INFO - 结果公告 爬取完成,共获取 100 条公告,耗时 0.22秒 2026-01-09 10:35:09 - gx_gp_monitor - INFO - 开始爬取 合同公告 2026-01-09 10:35:09 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:35:09 - gx_gp_monitor - INFO - 合同公告 爬取完成,共获取 100 条公告,耗时 0.27秒 2026-01-09 10:35:09 - gx_gp_monitor - INFO - 开始爬取 更正公告 2026-01-09 10:35:09 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:35:09 - gx_gp_monitor - INFO - 更正公告 爬取完成,共获取 100 条公告,耗时 0.23秒 2026-01-09 10:35:09 - gx_gp_monitor - INFO - 开始爬取 招标文件预公示 2026-01-09 10:35:10 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:35:10 - gx_gp_monitor - INFO - 招标文件预公示 爬取完成,共获取 100 条公告,耗时 0.16秒 2026-01-09 10:35:10 - gx_gp_monitor - INFO - 开始爬取 单一来源公示 2026-01-09 10:35:10 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:35:10 - gx_gp_monitor - INFO - 单一来源公示 爬取完成,共获取 100 条公告,耗时 0.24秒 2026-01-09 10:35:10 - gx_gp_monitor - INFO - 开始爬取 电子卖场公示 2026-01-09 10:35:10 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:35:10 - gx_gp_monitor - INFO - 电子卖场公示 爬取完成,共获取 100 条公告,耗时 0.42秒 2026-01-09 10:35:10 - gx_gp_monitor - INFO - 开始爬取 履约验收公示 2026-01-09 10:35:10 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:35:10 - gx_gp_monitor - INFO - 履约验收公示 爬取完成,共获取 100 条公告,耗时 0.21秒 2026-01-09 10:35:10 - gx_gp_monitor - INFO - 开始爬取 工程类公告 2026-01-09 10:35:11 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:35:11 - gx_gp_monitor - INFO - 工程类公告 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 10:35:11 - gx_gp_monitor - INFO - 开始爬取 框架协议征集公告 2026-01-09 10:35:11 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:35:11 - gx_gp_monitor - INFO - 框架协议征集公告 爬取完成,共获取 100 条公告,耗时 0.22秒 2026-01-09 10:35:11 - gx_gp_monitor - INFO - 开始爬取 框架协议入围结果公告 2026-01-09 10:35:11 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:35:11 - gx_gp_monitor - INFO - 框架协议入围结果公告 爬取完成,共获取 100 条公告,耗时 0.16秒 2026-01-09 10:35:11 - gx_gp_monitor - INFO - 开始爬取 框架协议成交结果汇总公告 2026-01-09 10:35:11 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:35:11 - gx_gp_monitor - INFO - 框架协议成交结果汇总公告 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 10:35:11 - gx_gp_monitor - INFO - 开始爬取 采购意向公开 2026-01-09 10:35:11 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:35:11 - gx_gp_monitor - INFO - 采购意向公开 爬取完成,共获取 100 条公告,耗时 0.17秒 2026-01-09 10:35:11 - gx_gp_monitor.crawler.spider - INFO - 爬取完成: 共处理 13 个来源,成功 13 个,失败 0 个,获取 1300 条公告 2026-01-09 10:35:11 - gx_gp_monitor.main - INFO - 搜索到 1300 条原始公告 2026-01-09 10:35:11 - gx_gp_monitor.main - INFO - 手动搜索模式:跳过数据库保存 2026-01-09 10:35:11 - gx_gp_monitor.filters.filters - INFO - 日期筛选: 1300 -> 194 条公告 2026-01-09 10:35:11 - gx_gp_monitor.filters.filters - INFO - 关键词筛选: 194 -> 2 条公告 2026-01-09 10:35:11 - gx_gp_monitor.filters.filters - INFO - 来源筛选: 2 -> 2 条公告 2026-01-09 10:35:11 - gx_gp_monitor.main - INFO - 筛选后剩余 2 条公告 2026-01-09 10:35:11 - gx_gp_monitor.main - INFO - 手动爬取模式:跳过筛选后公告的数据库保存 2026-01-09 10:35:11 - gx_gp_monitor.main - INFO - 爬取任务完成: {'success': True, 'total_crawled': 1300, 'filtered': 2, 'saved': 0, 'markdown_generated': False, 'notification_sent': True, 'filter_stats': {'keyword_filtered': 192, 'date_filtered': 1106, 'duplicate_filtered': 0, 'source_filtered': 0}, 'filtered_announcements': [Announcement(id=None, title='关于打印/复印纸的网上超市合同公告', publish_date=datetime.datetime(2026, 1, 9, 9, 53, 47), purchase_name='马山县卫生健康局', content_url='https://zfcg.gxzf.gov.cn/site/detail?parentId=66485&articleId=TQ8JBxuEbH10KU93ffGNUQ==', source_code='ZcyAnnouncement7', source_name='电子卖场公示', announcement_type=, crawled_at=datetime.datetime(2026, 1, 9, 10, 35, 10, 254547), created_at=None, updated_at=None, content_hash='406c71dd23410b265f2776eef85bddc7', keyword_matched=True, date_filtered=True, is_new=True, is_today=True), Announcement(id=None, title='马山县疾病预防控制中心[2181801000007961838]马山县龙之都汽车服务有限公司2025-2026年马山县县本级预算单位公务车辆维修、保养服务框架协议采购的验收公告', publish_date=datetime.datetime(2026, 1, 9, 9, 33, 27), purchase_name='马山县疾病预防控制中心', content_url='https://zfcg.gxzf.gov.cn/site/detail?parentId=66485&articleId=MiIzDm+fgMeYY8CH5dIPRA==', source_code='ZcyAnnouncement10', source_name='履约验收公示', announcement_type=, crawled_at=datetime.datetime(2026, 1, 9, 10, 35, 10, 669761), created_at=None, updated_at=None, content_hash='f22c9ba4ff8375192b93c24e1a2901df', keyword_matched=True, date_filtered=True, is_new=True, is_today=True)]} {address space usage: 243257344 bytes/231MB} {rss usage: 57946112 bytes/55MB} [pid: 1819124|app: 0|req: 3/5] 183.47.117.101 () {36 vars in 679 bytes} [Fri Jan 9 10:34:38 2026] POST /api/v1/wechat/callback?msg_signature=cd7d1cd61fa529ae42f14c64bb227705c5b263de×tamp=1767926078&nonce=1768275254 => generated 710 bytes in 33339 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 1) 2026-01-09 10:36:32 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 10:36:32 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: NNqNKwBKU8YP87SfjRv8oENckQkQFS70OmhGuzkGFrsC1YwEBQ... 2026-01-09 10:36:32 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 45f5c588689dc7ae542ab1553699861c4711dc8a 2026-01-09 10:36:32 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 45f5c588689dc7ae542ab1553699861c4711dc8a 2026-01-09 10:36:32 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 10:36:32 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 10:36:32 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=text 2026-01-09 10:36:32 - gx_gp_monitor.wechat.callback_server - INFO - 处理文本消息: content=搜索 大化..., user=WeiJueSen 2026-01-09 10:36:32 - gx_gp_monitor.wechat.message_handler - INFO - 处理文本消息: 搜索 大化, user: WeiJueSen 2026-01-09 10:36:32 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 手动搜索关键词: ['大化'] 2026-01-09 10:36:32 - gx_gp_monitor.main - INFO - 开始执行搜索任务 (手动搜索: True) 2026-01-09 10:36:32 - gx_gp_monitor.crawler.spider - INFO - 开始爬取 13 个公告来源 2026-01-09 10:36:32 - gx_gp_monitor - INFO - 开始爬取 采购公告 2026-01-09 10:36:37 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 10:36:37 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: NNqNKwBKU8YP87SfjRv8oENckQkQFS70OmhGuzkGFrsC1YwEBQ... 2026-01-09 10:36:37 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 45f5c588689dc7ae542ab1553699861c4711dc8a 2026-01-09 10:36:37 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 45f5c588689dc7ae542ab1553699861c4711dc8a 2026-01-09 10:36:37 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 10:36:37 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 10:36:37 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=text 2026-01-09 10:36:37 - gx_gp_monitor.wechat.callback_server - INFO - 处理文本消息: content=搜索 大化..., user=WeiJueSen 2026-01-09 10:36:37 - gx_gp_monitor.wechat.message_handler - INFO - 处理文本消息: 搜索 大化, user: WeiJueSen 2026-01-09 10:36:37 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 手动搜索关键词: ['大化'] 2026-01-09 10:36:37 - gx_gp_monitor.main - INFO - 开始执行搜索任务 (手动搜索: True) 2026-01-09 10:36:37 - gx_gp_monitor.crawler.spider - INFO - 开始爬取 13 个公告来源 2026-01-09 10:36:37 - gx_gp_monitor - INFO - 开始爬取 采购公告 2026-01-09 10:36:42 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 10:36:42 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: NNqNKwBKU8YP87SfjRv8oENckQkQFS70OmhGuzkGFrsC1YwEBQ... 2026-01-09 10:36:42 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 45f5c588689dc7ae542ab1553699861c4711dc8a 2026-01-09 10:36:42 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 45f5c588689dc7ae542ab1553699861c4711dc8a 2026-01-09 10:36:42 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 10:36:42 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 10:36:42 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=text 2026-01-09 10:36:42 - gx_gp_monitor.wechat.callback_server - INFO - 处理文本消息: content=搜索 大化..., user=WeiJueSen 2026-01-09 10:36:42 - gx_gp_monitor.wechat.message_handler - INFO - 处理文本消息: 搜索 大化, user: WeiJueSen 2026-01-09 10:36:42 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 手动搜索关键词: ['大化'] 2026-01-09 10:36:42 - gx_gp_monitor.main - INFO - 开始执行搜索任务 (手动搜索: True) 2026-01-09 10:36:42 - gx_gp_monitor.crawler.spider - INFO - 开始爬取 13 个公告来源 2026-01-09 10:36:42 - gx_gp_monitor - INFO - 开始爬取 采购公告 Fri Jan 9 10:37:02 2026 - *** HARAKIRI ON WORKER 1 (pid: 1819123, try: 1, graceful: yes) *** Fri Jan 9 10:37:02 2026 - HARAKIRI !!! worker 1 status !!! Fri Jan 9 10:37:02 2026 - HARAKIRI [core 0] 183.47.98.168 - POST /api/v1/wechat/callback?msg_signature=45f5c588689dc7ae542ab1553699861c4711dc8a×tamp=1767926192&nonce=1768601135 since 1767926192 Fri Jan 9 10:37:02 2026 - HARAKIRI !!! end of worker 1 status !!! Fri Jan 9 10:37:02 2026 - HARAKIRI triggered by worker 1 core 0 !!! Fri Jan 9 10:37:03 2026 - DAMN ! worker 1 (pid: 1819123) died, killed by signal 9 :( trying respawn ... Fri Jan 9 10:37:03 2026 - Respawned uWSGI worker 1 (new pid: 1820451) Fri Jan 9 10:37:03 2026 - Python auto-reloader enabled 2026-01-09 10:37:08 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:08 - gx_gp_monitor - INFO - 采购公告 爬取完成,共获取 100 条公告,耗时 30.39秒 2026-01-09 10:37:08 - gx_gp_monitor - INFO - 开始爬取 结果公告 2026-01-09 10:37:08 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:08 - gx_gp_monitor - INFO - 结果公告 爬取完成,共获取 100 条公告,耗时 0.24秒 2026-01-09 10:37:08 - gx_gp_monitor - INFO - 开始爬取 合同公告 2026-01-09 10:37:08 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:08 - gx_gp_monitor - INFO - 合同公告 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 10:37:08 - gx_gp_monitor - INFO - 开始爬取 更正公告 2026-01-09 10:37:08 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:08 - gx_gp_monitor - INFO - 更正公告 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 10:37:08 - gx_gp_monitor - INFO - 开始爬取 招标文件预公示 2026-01-09 10:37:09 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:09 - gx_gp_monitor - INFO - 招标文件预公示 爬取完成,共获取 100 条公告,耗时 0.24秒 2026-01-09 10:37:09 - gx_gp_monitor - INFO - 开始爬取 单一来源公示 2026-01-09 10:37:09 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:09 - gx_gp_monitor - INFO - 单一来源公示 爬取完成,共获取 100 条公告,耗时 0.22秒 2026-01-09 10:37:09 - gx_gp_monitor - INFO - 开始爬取 电子卖场公示 2026-01-09 10:37:09 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:09 - gx_gp_monitor - INFO - 电子卖场公示 爬取完成,共获取 100 条公告,耗时 0.39秒 2026-01-09 10:37:09 - gx_gp_monitor - INFO - 开始爬取 履约验收公示 2026-01-09 10:37:09 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:09 - gx_gp_monitor - INFO - 履约验收公示 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 10:37:09 - gx_gp_monitor - INFO - 开始爬取 工程类公告 2026-01-09 10:37:10 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:10 - gx_gp_monitor - INFO - 工程类公告 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 10:37:10 - gx_gp_monitor - INFO - 开始爬取 框架协议征集公告 2026-01-09 10:37:10 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:10 - gx_gp_monitor - INFO - 框架协议征集公告 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 10:37:10 - gx_gp_monitor - INFO - 开始爬取 框架协议入围结果公告 2026-01-09 10:37:10 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:10 - gx_gp_monitor - INFO - 框架协议入围结果公告 爬取完成,共获取 100 条公告,耗时 0.21秒 2026-01-09 10:37:10 - gx_gp_monitor - INFO - 开始爬取 框架协议成交结果汇总公告 2026-01-09 10:37:10 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:10 - gx_gp_monitor - INFO - 框架协议成交结果汇总公告 爬取完成,共获取 100 条公告,耗时 0.26秒 2026-01-09 10:37:10 - gx_gp_monitor - INFO - 开始爬取 采购意向公开 2026-01-09 10:37:10 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:10 - gx_gp_monitor - INFO - 采购意向公开 爬取完成,共获取 100 条公告,耗时 0.22秒 2026-01-09 10:37:10 - gx_gp_monitor.crawler.spider - INFO - 爬取完成: 共处理 13 个来源,成功 13 个,失败 0 个,获取 1300 条公告 2026-01-09 10:37:10 - gx_gp_monitor.main - INFO - 搜索到 1300 条原始公告 2026-01-09 10:37:10 - gx_gp_monitor.main - INFO - 手动搜索模式:跳过数据库保存 2026-01-09 10:37:10 - gx_gp_monitor.filters.filters - INFO - 日期筛选: 1300 -> 199 条公告 2026-01-09 10:37:10 - gx_gp_monitor.filters.filters - INFO - 关键词筛选: 199 -> 1 条公告 2026-01-09 10:37:10 - gx_gp_monitor.filters.filters - INFO - 来源筛选: 1 -> 1 条公告 2026-01-09 10:37:10 - gx_gp_monitor.main - INFO - 筛选后剩余 1 条公告 2026-01-09 10:37:10 - gx_gp_monitor.main - INFO - 手动爬取模式:跳过筛选后公告的数据库保存 2026-01-09 10:37:10 - gx_gp_monitor.main - INFO - 爬取任务完成: {'success': True, 'total_crawled': 1300, 'filtered': 1, 'saved': 0, 'markdown_generated': False, 'notification_sent': True, 'filter_stats': {'keyword_filtered': 198, 'date_filtered': 1101, 'duplicate_filtered': 0, 'source_filtered': 0}, 'filtered_announcements': [Announcement(id=None, title='大化瑶族自治县2025年度国土变更(日常变更)调查项目合同公告', publish_date=datetime.datetime(2026, 1, 9, 10, 2, 19), purchase_name='大化瑶族自治县自然资源局', content_url='https://zfcg.gxzf.gov.cn/site/detail?parentId=66485&articleId=NSAtgiyTEYUaFq3dcNs6ig==', source_code='ZcyAnnouncement3', source_name='合同公告', announcement_type=, crawled_at=datetime.datetime(2026, 1, 9, 10, 37, 8, 446065), created_at=None, updated_at=None, content_hash='9270849ec53ce195b3fc4de103ef656a', keyword_matched=True, date_filtered=True, is_new=True, is_today=True)]} {address space usage: 254787584 bytes/242MB} {rss usage: 74129408 bytes/70MB} [pid: 1819124|app: 0|req: 5/6] 106.55.201.217 () {36 vars in 679 bytes} [Fri Jan 9 10:36:37 2026] POST /api/v1/wechat/callback?msg_signature=45f5c588689dc7ae542ab1553699861c4711dc8a×tamp=1767926192&nonce=1768601135 => generated 710 bytes in 33138 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 0) 2026-01-09 10:37:13 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:13 - gx_gp_monitor - INFO - 采购公告 爬取完成,共获取 100 条公告,耗时 30.38秒 2026-01-09 10:37:13 - gx_gp_monitor - INFO - 开始爬取 结果公告 2026-01-09 10:37:13 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:13 - gx_gp_monitor - INFO - 结果公告 爬取完成,共获取 100 条公告,耗时 0.26秒 2026-01-09 10:37:13 - gx_gp_monitor - INFO - 开始爬取 合同公告 2026-01-09 10:37:13 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:13 - gx_gp_monitor - INFO - 合同公告 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 10:37:13 - gx_gp_monitor - INFO - 开始爬取 更正公告 2026-01-09 10:37:13 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:13 - gx_gp_monitor - INFO - 更正公告 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 10:37:13 - gx_gp_monitor - INFO - 开始爬取 招标文件预公示 2026-01-09 10:37:14 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:14 - gx_gp_monitor - INFO - 招标文件预公示 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 10:37:14 - gx_gp_monitor - INFO - 开始爬取 单一来源公示 2026-01-09 10:37:14 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:14 - gx_gp_monitor - INFO - 单一来源公示 爬取完成,共获取 100 条公告,耗时 0.16秒 2026-01-09 10:37:14 - gx_gp_monitor - INFO - 开始爬取 电子卖场公示 2026-01-09 10:37:14 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:14 - gx_gp_monitor - INFO - 电子卖场公示 爬取完成,共获取 100 条公告,耗时 0.36秒 2026-01-09 10:37:14 - gx_gp_monitor - INFO - 开始爬取 履约验收公示 2026-01-09 10:37:14 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:14 - gx_gp_monitor - INFO - 履约验收公示 爬取完成,共获取 100 条公告,耗时 0.22秒 2026-01-09 10:37:14 - gx_gp_monitor - INFO - 开始爬取 工程类公告 2026-01-09 10:37:15 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:15 - gx_gp_monitor - INFO - 工程类公告 爬取完成,共获取 100 条公告,耗时 0.26秒 2026-01-09 10:37:15 - gx_gp_monitor - INFO - 开始爬取 框架协议征集公告 2026-01-09 10:37:15 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:15 - gx_gp_monitor - INFO - 框架协议征集公告 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 10:37:15 - gx_gp_monitor - INFO - 开始爬取 框架协议入围结果公告 2026-01-09 10:37:15 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:15 - gx_gp_monitor - INFO - 框架协议入围结果公告 爬取完成,共获取 100 条公告,耗时 0.34秒 2026-01-09 10:37:15 - gx_gp_monitor - INFO - 开始爬取 框架协议成交结果汇总公告 2026-01-09 10:37:15 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:15 - gx_gp_monitor - INFO - 框架协议成交结果汇总公告 爬取完成,共获取 100 条公告,耗时 0.29秒 2026-01-09 10:37:15 - gx_gp_monitor - INFO - 开始爬取 采购意向公开 2026-01-09 10:37:16 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:16 - gx_gp_monitor - INFO - 采购意向公开 爬取完成,共获取 100 条公告,耗时 0.29秒 2026-01-09 10:37:16 - gx_gp_monitor.crawler.spider - INFO - 爬取完成: 共处理 13 个来源,成功 13 个,失败 0 个,获取 1300 条公告 2026-01-09 10:37:16 - gx_gp_monitor.main - INFO - 搜索到 1300 条原始公告 2026-01-09 10:37:16 - gx_gp_monitor.main - INFO - 手动搜索模式:跳过数据库保存 2026-01-09 10:37:16 - gx_gp_monitor.filters.filters - INFO - 日期筛选: 1300 -> 199 条公告 2026-01-09 10:37:16 - gx_gp_monitor.filters.filters - INFO - 关键词筛选: 199 -> 1 条公告 2026-01-09 10:37:16 - gx_gp_monitor.filters.filters - INFO - 来源筛选: 1 -> 1 条公告 2026-01-09 10:37:16 - gx_gp_monitor.main - INFO - 筛选后剩余 1 条公告 2026-01-09 10:37:16 - gx_gp_monitor.main - INFO - 手动爬取模式:跳过筛选后公告的数据库保存 2026-01-09 10:37:16 - gx_gp_monitor.main - INFO - 爬取任务完成: {'success': True, 'total_crawled': 1300, 'filtered': 1, 'saved': 0, 'markdown_generated': False, 'notification_sent': True, 'filter_stats': {'keyword_filtered': 198, 'date_filtered': 1101, 'duplicate_filtered': 0, 'source_filtered': 0}, 'filtered_announcements': [Announcement(id=None, title='大化瑶族自治县2025年度国土变更(日常变更)调查项目合同公告', publish_date=datetime.datetime(2026, 1, 9, 10, 2, 19), purchase_name='大化瑶族自治县自然资源局', content_url='https://zfcg.gxzf.gov.cn/site/detail?parentId=66485&articleId=NSAtgiyTEYUaFq3dcNs6ig==', source_code='ZcyAnnouncement3', source_name='合同公告', announcement_type=, crawled_at=datetime.datetime(2026, 1, 9, 10, 37, 13, 480617), created_at=None, updated_at=None, content_hash='9270849ec53ce195b3fc4de103ef656a', keyword_matched=True, date_filtered=True, is_new=True, is_today=True)]} {address space usage: 245350400 bytes/233MB} {rss usage: 64823296 bytes/61MB} [pid: 1819124|app: 0|req: 5/7] 112.53.2.93 () {36 vars in 676 bytes} [Fri Jan 9 10:36:42 2026] POST /api/v1/wechat/callback?msg_signature=45f5c588689dc7ae542ab1553699861c4711dc8a×tamp=1767926192&nonce=1768601135 => generated 710 bytes in 33356 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 1) 2026-01-09 10:37:32 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 10:37:32 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: Lkx65MFWghgpCIU1tWydWqtX7DDrez3S6jBM64NmE/dhfhBQMy... 2026-01-09 10:37:32 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 047168e9e8d4e60f631ac6f98d07d8380df9c2b8 2026-01-09 10:37:32 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 047168e9e8d4e60f631ac6f98d07d8380df9c2b8 2026-01-09 10:37:32 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 10:37:32 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 10:37:32 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=text 2026-01-09 10:37:32 - gx_gp_monitor.wechat.callback_server - INFO - 处理文本消息: content=搜索 马山..., user=WeiJueSen 2026-01-09 10:37:32 - gx_gp_monitor.wechat.message_handler - INFO - 处理文本消息: 搜索 马山, user: WeiJueSen 2026-01-09 10:37:32 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 手动搜索关键词: ['马山'] 2026-01-09 10:37:32 - gx_gp_monitor.main - INFO - === 广西政府采购网公告监控系统启动 === 2026-01-09 10:37:32 - gx_gp_monitor.main - INFO - 版本: 1.0.0 2026-01-09 10:37:32 - gx_gp_monitor.main - INFO - 配置文件: 默认配置 2026-01-09 10:37:32 - gx_gp_monitor.core.reliability - INFO - 健康检查通过 2026-01-09 10:37:32 - gx_gp_monitor.core.database - INFO - 数据库连接池初始化成功 2026-01-09 10:37:32 - gx_gp_monitor.core.database - INFO - 开始初始化数据库表结构 2026-01-09 10:37:32 - gx_gp_monitor.core.database - INFO - 数据库表结构初始化完成 2026-01-09 10:37:32 - gx_gp_monitor.storage.postgresql - INFO - 存储初始化完成 2026-01-09 10:37:32 - gx_gp_monitor.main - INFO - 应用初始化完成 2026-01-09 10:37:32 - gx_gp_monitor.main - INFO - 开始执行搜索任务 (手动搜索: True) 2026-01-09 10:37:32 - gx_gp_monitor.crawler.spider - INFO - 开始爬取 13 个公告来源 2026-01-09 10:37:32 - gx_gp_monitor - INFO - 开始爬取 采购公告 2026-01-09 10:37:37 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 10:37:37 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: Lkx65MFWghgpCIU1tWydWqtX7DDrez3S6jBM64NmE/dhfhBQMy... 2026-01-09 10:37:37 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 047168e9e8d4e60f631ac6f98d07d8380df9c2b8 2026-01-09 10:37:37 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 047168e9e8d4e60f631ac6f98d07d8380df9c2b8 2026-01-09 10:37:37 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 10:37:37 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 10:37:37 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=text 2026-01-09 10:37:37 - gx_gp_monitor.wechat.callback_server - INFO - 处理文本消息: content=搜索 马山..., user=WeiJueSen 2026-01-09 10:37:37 - gx_gp_monitor.wechat.message_handler - INFO - 处理文本消息: 搜索 马山, user: WeiJueSen 2026-01-09 10:37:37 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 手动搜索关键词: ['马山'] 2026-01-09 10:37:37 - gx_gp_monitor.main - INFO - 开始执行搜索任务 (手动搜索: True) 2026-01-09 10:37:37 - gx_gp_monitor.crawler.spider - INFO - 开始爬取 13 个公告来源 2026-01-09 10:37:37 - gx_gp_monitor - INFO - 开始爬取 采购公告 2026-01-09 10:37:42 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 10:37:42 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: Lkx65MFWghgpCIU1tWydWqtX7DDrez3S6jBM64NmE/dhfhBQMy... 2026-01-09 10:37:42 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 047168e9e8d4e60f631ac6f98d07d8380df9c2b8 2026-01-09 10:37:42 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 047168e9e8d4e60f631ac6f98d07d8380df9c2b8 2026-01-09 10:37:42 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 10:37:42 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 10:37:42 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=text 2026-01-09 10:37:42 - gx_gp_monitor.wechat.callback_server - INFO - 处理文本消息: content=搜索 马山..., user=WeiJueSen 2026-01-09 10:37:42 - gx_gp_monitor.wechat.message_handler - INFO - 处理文本消息: 搜索 马山, user: WeiJueSen 2026-01-09 10:37:42 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 手动搜索关键词: ['马山'] 2026-01-09 10:37:42 - gx_gp_monitor.main - INFO - 开始执行搜索任务 (手动搜索: True) 2026-01-09 10:37:42 - gx_gp_monitor.crawler.spider - INFO - 开始爬取 13 个公告来源 2026-01-09 10:37:42 - gx_gp_monitor - INFO - 开始爬取 采购公告 2026-01-09 10:37:42 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:42 - gx_gp_monitor - INFO - 采购公告 爬取完成,共获取 100 条公告,耗时 0.44秒 2026-01-09 10:37:42 - gx_gp_monitor - INFO - 开始爬取 结果公告 2026-01-09 10:37:43 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:43 - gx_gp_monitor - INFO - 结果公告 爬取完成,共获取 100 条公告,耗时 0.37秒 2026-01-09 10:37:43 - gx_gp_monitor - INFO - 开始爬取 合同公告 2026-01-09 10:37:43 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:43 - gx_gp_monitor - INFO - 合同公告 爬取完成,共获取 100 条公告,耗时 0.24秒 2026-01-09 10:37:43 - gx_gp_monitor - INFO - 开始爬取 更正公告 2026-01-09 10:37:43 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:43 - gx_gp_monitor - INFO - 更正公告 爬取完成,共获取 100 条公告,耗时 0.21秒 2026-01-09 10:37:43 - gx_gp_monitor - INFO - 开始爬取 招标文件预公示 2026-01-09 10:37:43 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:43 - gx_gp_monitor - INFO - 招标文件预公示 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 10:37:43 - gx_gp_monitor - INFO - 开始爬取 单一来源公示 2026-01-09 10:37:43 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:43 - gx_gp_monitor - INFO - 单一来源公示 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 10:37:43 - gx_gp_monitor - INFO - 开始爬取 电子卖场公示 2026-01-09 10:37:44 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:44 - gx_gp_monitor - INFO - 电子卖场公示 爬取完成,共获取 100 条公告,耗时 0.34秒 2026-01-09 10:37:44 - gx_gp_monitor - INFO - 开始爬取 履约验收公示 2026-01-09 10:37:44 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:44 - gx_gp_monitor - INFO - 履约验收公示 爬取完成,共获取 100 条公告,耗时 0.17秒 2026-01-09 10:37:44 - gx_gp_monitor - INFO - 开始爬取 工程类公告 2026-01-09 10:37:44 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:44 - gx_gp_monitor - INFO - 工程类公告 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 10:37:44 - gx_gp_monitor - INFO - 开始爬取 框架协议征集公告 2026-01-09 10:37:44 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:44 - gx_gp_monitor - INFO - 框架协议征集公告 爬取完成,共获取 100 条公告,耗时 0.21秒 2026-01-09 10:37:44 - gx_gp_monitor - INFO - 开始爬取 框架协议入围结果公告 2026-01-09 10:37:44 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:44 - gx_gp_monitor - INFO - 框架协议入围结果公告 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 10:37:44 - gx_gp_monitor - INFO - 开始爬取 框架协议成交结果汇总公告 2026-01-09 10:37:45 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:45 - gx_gp_monitor - INFO - 框架协议成交结果汇总公告 爬取完成,共获取 100 条公告,耗时 0.16秒 2026-01-09 10:37:45 - gx_gp_monitor - INFO - 开始爬取 采购意向公开 2026-01-09 10:37:45 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:37:45 - gx_gp_monitor - INFO - 采购意向公开 爬取完成,共获取 100 条公告,耗时 0.21秒 2026-01-09 10:37:45 - gx_gp_monitor.crawler.spider - INFO - 爬取完成: 共处理 13 个来源,成功 13 个,失败 0 个,获取 1300 条公告 2026-01-09 10:37:45 - gx_gp_monitor.main - INFO - 搜索到 1300 条原始公告 2026-01-09 10:37:45 - gx_gp_monitor.main - INFO - 手动搜索模式:跳过数据库保存 2026-01-09 10:37:45 - gx_gp_monitor.filters.filters - INFO - 日期筛选: 1300 -> 200 条公告 2026-01-09 10:37:45 - gx_gp_monitor.filters.filters - INFO - 关键词筛选: 200 -> 2 条公告 2026-01-09 10:37:45 - gx_gp_monitor.filters.filters - INFO - 来源筛选: 2 -> 2 条公告 2026-01-09 10:37:45 - gx_gp_monitor.main - INFO - 筛选后剩余 2 条公告 2026-01-09 10:37:45 - gx_gp_monitor.main - INFO - 手动爬取模式:跳过筛选后公告的数据库保存 2026-01-09 10:37:45 - gx_gp_monitor.main - INFO - 爬取任务完成: {'success': True, 'total_crawled': 1300, 'filtered': 2, 'saved': 0, 'markdown_generated': False, 'notification_sent': True, 'filter_stats': {'keyword_filtered': 198, 'date_filtered': 1100, 'duplicate_filtered': 0, 'source_filtered': 0}, 'filtered_announcements': [Announcement(id=None, title='关于打印/复印纸的网上超市合同公告', publish_date=datetime.datetime(2026, 1, 9, 9, 53, 47), purchase_name='马山县卫生健康局', content_url='https://zfcg.gxzf.gov.cn/site/detail?parentId=66485&articleId=TQ8JBxuEbH10KU93ffGNUQ==', source_code='ZcyAnnouncement7', source_name='电子卖场公示', announcement_type=, crawled_at=datetime.datetime(2026, 1, 9, 10, 37, 43, 886887), created_at=None, updated_at=None, content_hash='406c71dd23410b265f2776eef85bddc7', keyword_matched=True, date_filtered=True, is_new=True, is_today=True), Announcement(id=None, title='马山县疾病预防控制中心[2181801000007961838]马山县龙之都汽车服务有限公司2025-2026年马山县县本级预算单位公务车辆维修、保养服务框架协议采购的验收公告', publish_date=datetime.datetime(2026, 1, 9, 9, 33, 27), purchase_name='马山县疾病预防控制中心', content_url='https://zfcg.gxzf.gov.cn/site/detail?parentId=66485&articleId=MiIzDm+fgMeYY8CH5dIPRA==', source_code='ZcyAnnouncement10', source_name='履约验收公示', announcement_type=, crawled_at=datetime.datetime(2026, 1, 9, 10, 37, 44, 227222), created_at=None, updated_at=None, content_hash='f22c9ba4ff8375192b93c24e1a2901df', keyword_matched=True, date_filtered=True, is_new=True, is_today=True)]} {address space usage: 246398976 bytes/234MB} {rss usage: 64925696 bytes/61MB} [pid: 1819124|app: 0|req: 6/8] 112.53.2.93 () {36 vars in 676 bytes} [Fri Jan 9 10:37:42 2026] POST /api/v1/wechat/callback?msg_signature=047168e9e8d4e60f631ac6f98d07d8380df9c2b8×tamp=1767926252&nonce=1768012394 => generated 710 bytes in 3124 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 0) 2026-01-09 10:38:02 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:38:02 - gx_gp_monitor - INFO - 采购公告 爬取完成,共获取 100 条公告,耗时 30.38秒 2026-01-09 10:38:02 - gx_gp_monitor - INFO - 开始爬取 结果公告 2026-01-09 10:38:02 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:38:02 - gx_gp_monitor - INFO - 结果公告 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 10:38:02 - gx_gp_monitor - INFO - 开始爬取 合同公告 2026-01-09 10:38:03 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:38:03 - gx_gp_monitor - INFO - 合同公告 爬取完成,共获取 100 条公告,耗时 0.25秒 2026-01-09 10:38:03 - gx_gp_monitor - INFO - 开始爬取 更正公告 2026-01-09 10:38:03 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:38:03 - gx_gp_monitor - INFO - 更正公告 爬取完成,共获取 100 条公告,耗时 0.28秒 2026-01-09 10:38:03 - gx_gp_monitor - INFO - 开始爬取 招标文件预公示 2026-01-09 10:38:03 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:38:03 - gx_gp_monitor - INFO - 招标文件预公示 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 10:38:03 - gx_gp_monitor - INFO - 开始爬取 单一来源公示 2026-01-09 10:38:03 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:38:03 - gx_gp_monitor - INFO - 单一来源公示 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 10:38:03 - gx_gp_monitor - INFO - 开始爬取 电子卖场公示 2026-01-09 10:38:04 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:38:04 - gx_gp_monitor - INFO - 电子卖场公示 爬取完成,共获取 100 条公告,耗时 0.34秒 2026-01-09 10:38:04 - gx_gp_monitor - INFO - 开始爬取 履约验收公示 2026-01-09 10:38:04 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:38:04 - gx_gp_monitor - INFO - 履约验收公示 爬取完成,共获取 100 条公告,耗时 0.21秒 2026-01-09 10:38:04 - gx_gp_monitor - INFO - 开始爬取 工程类公告 2026-01-09 10:38:04 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:38:04 - gx_gp_monitor - INFO - 工程类公告 爬取完成,共获取 100 条公告,耗时 0.26秒 2026-01-09 10:38:04 - gx_gp_monitor - INFO - 开始爬取 框架协议征集公告 2026-01-09 10:38:04 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:38:04 - gx_gp_monitor - INFO - 框架协议征集公告 爬取完成,共获取 100 条公告,耗时 0.26秒 2026-01-09 10:38:04 - gx_gp_monitor - INFO - 开始爬取 框架协议入围结果公告 2026-01-09 10:38:05 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:38:05 - gx_gp_monitor - INFO - 框架协议入围结果公告 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 10:38:05 - gx_gp_monitor - INFO - 开始爬取 框架协议成交结果汇总公告 2026-01-09 10:38:05 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:38:05 - gx_gp_monitor - INFO - 框架协议成交结果汇总公告 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 10:38:05 - gx_gp_monitor - INFO - 开始爬取 采购意向公开 2026-01-09 10:38:05 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:38:05 - gx_gp_monitor - INFO - 采购意向公开 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 10:38:05 - gx_gp_monitor.crawler.spider - INFO - 爬取完成: 共处理 13 个来源,成功 13 个,失败 0 个,获取 1300 条公告 2026-01-09 10:38:05 - gx_gp_monitor.main - INFO - 搜索到 1300 条原始公告 2026-01-09 10:38:05 - gx_gp_monitor.main - INFO - 手动搜索模式:跳过数据库保存 2026-01-09 10:38:05 - gx_gp_monitor.filters.filters - INFO - 日期筛选: 1300 -> 203 条公告 2026-01-09 10:38:05 - gx_gp_monitor.filters.filters - INFO - 关键词筛选: 203 -> 2 条公告 2026-01-09 10:38:05 - gx_gp_monitor.filters.filters - INFO - 来源筛选: 2 -> 2 条公告 2026-01-09 10:38:05 - gx_gp_monitor.main - INFO - 筛选后剩余 2 条公告 2026-01-09 10:38:05 - gx_gp_monitor.main - INFO - 手动爬取模式:跳过筛选后公告的数据库保存 2026-01-09 10:38:05 - gx_gp_monitor.main - INFO - 爬取任务完成: {'success': True, 'total_crawled': 1300, 'filtered': 2, 'saved': 0, 'markdown_generated': False, 'notification_sent': True, 'filter_stats': {'keyword_filtered': 201, 'date_filtered': 1097, 'duplicate_filtered': 0, 'source_filtered': 0}, 'filtered_announcements': [Announcement(id=None, title='关于打印/复印纸的网上超市合同公告', publish_date=datetime.datetime(2026, 1, 9, 9, 53, 47), purchase_name='马山县卫生健康局', content_url='https://zfcg.gxzf.gov.cn/site/detail?parentId=66485&articleId=TQ8JBxuEbH10KU93ffGNUQ==', source_code='ZcyAnnouncement7', source_name='电子卖场公示', announcement_type=, crawled_at=datetime.datetime(2026, 1, 9, 10, 38, 3, 903378), created_at=None, updated_at=None, content_hash='406c71dd23410b265f2776eef85bddc7', keyword_matched=True, date_filtered=True, is_new=True, is_today=True), Announcement(id=None, title='马山县疾病预防控制中心[2181801000007961838]马山县龙之都汽车服务有限公司2025-2026年马山县县本级预算单位公务车辆维修、保养服务框架协议采购的验收公告', publish_date=datetime.datetime(2026, 1, 9, 9, 33, 27), purchase_name='马山县疾病预防控制中心', content_url='https://zfcg.gxzf.gov.cn/site/detail?parentId=66485&articleId=MiIzDm+fgMeYY8CH5dIPRA==', source_code='ZcyAnnouncement10', source_name='履约验收公示', announcement_type=, crawled_at=datetime.datetime(2026, 1, 9, 10, 38, 4, 239840), created_at=None, updated_at=None, content_hash='f22c9ba4ff8375192b93c24e1a2901df', keyword_matched=True, date_filtered=True, is_new=True, is_today=True)]} {address space usage: 254042112 bytes/242MB} {rss usage: 71852032 bytes/68MB} [pid: 1820451|app: 0|req: 5/9] 183.47.98.227 () {36 vars in 678 bytes} [Fri Jan 9 10:37:32 2026] POST /api/v1/wechat/callback?msg_signature=047168e9e8d4e60f631ac6f98d07d8380df9c2b8×tamp=1767926252&nonce=1768012394 => generated 710 bytes in 33319 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 0) 2026-01-09 10:38:07 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:38:07 - gx_gp_monitor - INFO - 采购公告 爬取完成,共获取 100 条公告,耗时 30.38秒 2026-01-09 10:38:07 - gx_gp_monitor - INFO - 开始爬取 结果公告 2026-01-09 10:38:07 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:38:07 - gx_gp_monitor - INFO - 结果公告 爬取完成,共获取 100 条公告,耗时 0.21秒 2026-01-09 10:38:07 - gx_gp_monitor - INFO - 开始爬取 合同公告 2026-01-09 10:38:07 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:38:07 - gx_gp_monitor - INFO - 合同公告 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 10:38:07 - gx_gp_monitor - INFO - 开始爬取 更正公告 2026-01-09 10:38:08 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:38:08 - gx_gp_monitor - INFO - 更正公告 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 10:38:08 - gx_gp_monitor - INFO - 开始爬取 招标文件预公示 2026-01-09 10:38:08 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:38:08 - gx_gp_monitor - INFO - 招标文件预公示 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 10:38:08 - gx_gp_monitor - INFO - 开始爬取 单一来源公示 2026-01-09 10:38:08 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:38:08 - gx_gp_monitor - INFO - 单一来源公示 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 10:38:08 - gx_gp_monitor - INFO - 开始爬取 电子卖场公示 2026-01-09 10:38:08 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:38:08 - gx_gp_monitor - INFO - 电子卖场公示 爬取完成,共获取 100 条公告,耗时 0.34秒 2026-01-09 10:38:08 - gx_gp_monitor - INFO - 开始爬取 履约验收公示 2026-01-09 10:38:09 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:38:09 - gx_gp_monitor - INFO - 履约验收公示 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 10:38:09 - gx_gp_monitor - INFO - 开始爬取 工程类公告 2026-01-09 10:38:09 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:38:09 - gx_gp_monitor - INFO - 工程类公告 爬取完成,共获取 100 条公告,耗时 0.23秒 2026-01-09 10:38:09 - gx_gp_monitor - INFO - 开始爬取 框架协议征集公告 2026-01-09 10:38:09 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:38:09 - gx_gp_monitor - INFO - 框架协议征集公告 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 10:38:09 - gx_gp_monitor - INFO - 开始爬取 框架协议入围结果公告 2026-01-09 10:38:09 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:38:09 - gx_gp_monitor - INFO - 框架协议入围结果公告 爬取完成,共获取 100 条公告,耗时 0.16秒 2026-01-09 10:38:09 - gx_gp_monitor - INFO - 开始爬取 框架协议成交结果汇总公告 2026-01-09 10:38:09 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:38:09 - gx_gp_monitor - INFO - 框架协议成交结果汇总公告 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 10:38:09 - gx_gp_monitor - INFO - 开始爬取 采购意向公开 2026-01-09 10:38:10 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:38:10 - gx_gp_monitor - INFO - 采购意向公开 爬取完成,共获取 100 条公告,耗时 0.23秒 2026-01-09 10:38:10 - gx_gp_monitor.crawler.spider - INFO - 爬取完成: 共处理 13 个来源,成功 13 个,失败 0 个,获取 1300 条公告 2026-01-09 10:38:10 - gx_gp_monitor.main - INFO - 搜索到 1300 条原始公告 2026-01-09 10:38:10 - gx_gp_monitor.main - INFO - 手动搜索模式:跳过数据库保存 2026-01-09 10:38:10 - gx_gp_monitor.filters.filters - INFO - 日期筛选: 1300 -> 203 条公告 2026-01-09 10:38:10 - gx_gp_monitor.filters.filters - INFO - 关键词筛选: 203 -> 2 条公告 2026-01-09 10:38:10 - gx_gp_monitor.filters.filters - INFO - 来源筛选: 2 -> 2 条公告 2026-01-09 10:38:10 - gx_gp_monitor.main - INFO - 筛选后剩余 2 条公告 2026-01-09 10:38:10 - gx_gp_monitor.main - INFO - 手动爬取模式:跳过筛选后公告的数据库保存 2026-01-09 10:38:10 - gx_gp_monitor.main - INFO - 爬取任务完成: {'success': True, 'total_crawled': 1300, 'filtered': 2, 'saved': 0, 'markdown_generated': False, 'notification_sent': True, 'filter_stats': {'keyword_filtered': 201, 'date_filtered': 1097, 'duplicate_filtered': 0, 'source_filtered': 0}, 'filtered_announcements': [Announcement(id=None, title='关于打印/复印纸的网上超市合同公告', publish_date=datetime.datetime(2026, 1, 9, 9, 53, 47), purchase_name='马山县卫生健康局', content_url='https://zfcg.gxzf.gov.cn/site/detail?parentId=66485&articleId=TQ8JBxuEbH10KU93ffGNUQ==', source_code='ZcyAnnouncement7', source_name='电子卖场公示', announcement_type=, crawled_at=datetime.datetime(2026, 1, 9, 10, 38, 8, 573750), created_at=None, updated_at=None, content_hash='406c71dd23410b265f2776eef85bddc7', keyword_matched=True, date_filtered=True, is_new=True, is_today=True), Announcement(id=None, title='马山县疾病预防控制中心[2181801000007961838]马山县龙之都汽车服务有限公司2025-2026年马山县县本级预算单位公务车辆维修、保养服务框架协议采购的验收公告', publish_date=datetime.datetime(2026, 1, 9, 9, 33, 27), purchase_name='马山县疾病预防控制中心', content_url='https://zfcg.gxzf.gov.cn/site/detail?parentId=66485&articleId=MiIzDm+fgMeYY8CH5dIPRA==', source_code='ZcyAnnouncement10', source_name='履约验收公示', announcement_type=, crawled_at=datetime.datetime(2026, 1, 9, 10, 38, 8, 911610), created_at=None, updated_at=None, content_hash='f22c9ba4ff8375192b93c24e1a2901df', keyword_matched=True, date_filtered=True, is_new=True, is_today=True)]} {address space usage: 243556352 bytes/232MB} {rss usage: 61554688 bytes/58MB} [pid: 1820451|app: 0|req: 5/10] 106.55.202.215 () {36 vars in 679 bytes} [Fri Jan 9 10:37:37 2026] POST /api/v1/wechat/callback?msg_signature=047168e9e8d4e60f631ac6f98d07d8380df9c2b8×tamp=1767926252&nonce=1768012394 => generated 710 bytes in 32924 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 1) Fri Jan 9 10:42:44 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:42:44 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:42:44 2026 - gateway "uWSGI http 1" has been buried (pid: 1819127) Fri Jan 9 10:42:44 2026 - ...gracefully killing workers... Fri Jan 9 10:42:44 2026 - Gracefully killing worker 2 (pid: 1819124)... Fri Jan 9 10:42:44 2026 - Gracefully killing worker 1 (pid: 1820451)... Fri Jan 9 10:42:45 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:42:45 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:42:45 2026 - binary reloading uWSGI... Fri Jan 9 10:42:45 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:42:45 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:42:45 2026 - found fd 3 mapped to socket 0 (127.0.0.1:39103) Fri Jan 9 10:42:45 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:42:45 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:42:45 2026] *** Fri Jan 9 10:42:45 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:42:45 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:42:45 2026 - nodename: ubserver Fri Jan 9 10:42:45 2026 - machine: x86_64 Fri Jan 9 10:42:45 2026 - clock source: unix Fri Jan 9 10:42:45 2026 - pcre jit disabled Fri Jan 9 10:42:45 2026 - detected number of CPU cores: 12 Fri Jan 9 10:42:45 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:42:45 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:42:45 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:42:45 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:42:45 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:42:45 2026 - your processes number limit is 61306 Fri Jan 9 10:42:45 2026 - your memory page size is 4096 bytes Fri Jan 9 10:42:45 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:42:45 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:42:45 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:42:45 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:42:45 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:42:45 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:41921 (port auto-assigned) fd 4 Fri Jan 9 10:42:45 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:42:45 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:42:45 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:42:45 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:42:45 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:42:45 2026 - Python main interpreter initialized at 0x74fbab152d10 Fri Jan 9 10:42:45 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:42:45 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:42:45 2026 - python threads support enabled Fri Jan 9 10:42:45 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:42:45 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:42:45 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:42:45 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:42:45 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:42:45 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:42:45 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x74fbab152d10 pid: 1782404 (default app) Fri Jan 9 10:42:45 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:42:45 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:42:45 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:42:45 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:42:45 2026 - spawned uWSGI worker 1 (pid: 1822209, cores: 2) Fri Jan 9 10:42:45 2026 - spawned uWSGI worker 2 (pid: 1822212, cores: 2) Fri Jan 9 10:42:45 2026 - Python auto-reloader enabled Fri Jan 9 10:42:45 2026 - spawned uWSGI http 1 (pid: 1822215) Fri Jan 9 10:42:56 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:42:56 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:42:56 2026 - gateway "uWSGI http 1" has been buried (pid: 1822215) Fri Jan 9 10:42:56 2026 - ...gracefully killing workers... Fri Jan 9 10:42:56 2026 - Gracefully killing worker 1 (pid: 1822209)... Fri Jan 9 10:42:56 2026 - Gracefully killing worker 2 (pid: 1822212)... Fri Jan 9 10:42:57 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:42:57 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:42:57 2026 - binary reloading uWSGI... Fri Jan 9 10:42:57 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:42:57 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:42:57 2026 - found fd 4 mapped to socket 0 (127.0.0.1:41921) Fri Jan 9 10:42:57 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:42:57 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:42:57 2026] *** Fri Jan 9 10:42:57 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:42:57 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:42:57 2026 - nodename: ubserver Fri Jan 9 10:42:57 2026 - machine: x86_64 Fri Jan 9 10:42:57 2026 - clock source: unix Fri Jan 9 10:42:57 2026 - pcre jit disabled Fri Jan 9 10:42:57 2026 - detected number of CPU cores: 12 Fri Jan 9 10:42:57 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:42:57 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:42:57 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:42:57 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:42:57 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:42:57 2026 - your processes number limit is 61306 Fri Jan 9 10:42:57 2026 - your memory page size is 4096 bytes Fri Jan 9 10:42:57 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:42:57 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:42:57 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:42:57 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:42:57 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:42:57 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:36909 (port auto-assigned) fd 3 Fri Jan 9 10:42:57 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:42:57 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:42:57 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:42:57 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:42:57 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:42:57 2026 - Python main interpreter initialized at 0x7aef49152d10 Fri Jan 9 10:42:57 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:42:57 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:42:57 2026 - python threads support enabled Fri Jan 9 10:42:57 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:42:57 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:42:57 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:42:57 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:42:57 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:42:57 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:42:57 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x7aef49152d10 pid: 1782404 (default app) Fri Jan 9 10:42:57 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:42:57 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:42:57 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:42:57 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:42:57 2026 - spawned uWSGI worker 1 (pid: 1822242, cores: 2) Fri Jan 9 10:42:57 2026 - spawned uWSGI worker 2 (pid: 1822243, cores: 2) Fri Jan 9 10:42:57 2026 - Python auto-reloader enabled Fri Jan 9 10:42:57 2026 - spawned uWSGI http 1 (pid: 1822248) Fri Jan 9 10:43:04 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:43:04 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:43:04 2026 - gateway "uWSGI http 1" has been buried (pid: 1822248) Fri Jan 9 10:43:04 2026 - ...gracefully killing workers... Fri Jan 9 10:43:04 2026 - Gracefully killing worker 1 (pid: 1822242)... Fri Jan 9 10:43:04 2026 - Gracefully killing worker 2 (pid: 1822243)... Fri Jan 9 10:43:05 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:43:05 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:43:05 2026 - binary reloading uWSGI... Fri Jan 9 10:43:05 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:43:05 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:43:05 2026 - found fd 3 mapped to socket 0 (127.0.0.1:36909) Fri Jan 9 10:43:05 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:43:05 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:43:05 2026] *** Fri Jan 9 10:43:05 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:43:05 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:43:05 2026 - nodename: ubserver Fri Jan 9 10:43:05 2026 - machine: x86_64 Fri Jan 9 10:43:05 2026 - clock source: unix Fri Jan 9 10:43:05 2026 - pcre jit disabled Fri Jan 9 10:43:05 2026 - detected number of CPU cores: 12 Fri Jan 9 10:43:05 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:43:05 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:43:05 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:43:05 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:43:05 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:43:05 2026 - your processes number limit is 61306 Fri Jan 9 10:43:05 2026 - your memory page size is 4096 bytes Fri Jan 9 10:43:05 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:43:05 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:43:05 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:43:05 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:43:05 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:43:05 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:39615 (port auto-assigned) fd 4 Fri Jan 9 10:43:05 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:43:05 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:43:05 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:43:05 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:43:05 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:43:05 2026 - Python main interpreter initialized at 0x70ebea952d10 Fri Jan 9 10:43:05 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:43:05 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:43:05 2026 - python threads support enabled Fri Jan 9 10:43:05 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:43:05 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:43:05 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:43:05 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:43:05 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:43:05 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:43:05 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x70ebea952d10 pid: 1782404 (default app) Fri Jan 9 10:43:05 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:43:05 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:43:05 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:43:05 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:43:05 2026 - spawned uWSGI worker 1 (pid: 1822287, cores: 2) Fri Jan 9 10:43:05 2026 - spawned uWSGI worker 2 (pid: 1822288, cores: 2) Fri Jan 9 10:43:05 2026 - spawned uWSGI http 1 (pid: 1822293) Fri Jan 9 10:43:05 2026 - Python auto-reloader enabled Fri Jan 9 10:43:25 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:43:25 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:43:25 2026 - gateway "uWSGI http 1" has been buried (pid: 1822293) Fri Jan 9 10:43:25 2026 - ...gracefully killing workers... Fri Jan 9 10:43:25 2026 - Gracefully killing worker 1 (pid: 1822287)... Fri Jan 9 10:43:25 2026 - Gracefully killing worker 2 (pid: 1822288)... Fri Jan 9 10:43:26 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:43:26 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:43:26 2026 - binary reloading uWSGI... Fri Jan 9 10:43:26 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:43:26 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:43:26 2026 - found fd 4 mapped to socket 0 (127.0.0.1:39615) Fri Jan 9 10:43:26 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:43:26 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:43:26 2026] *** Fri Jan 9 10:43:26 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:43:26 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:43:26 2026 - nodename: ubserver Fri Jan 9 10:43:26 2026 - machine: x86_64 Fri Jan 9 10:43:26 2026 - clock source: unix Fri Jan 9 10:43:26 2026 - pcre jit disabled Fri Jan 9 10:43:26 2026 - detected number of CPU cores: 12 Fri Jan 9 10:43:26 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:43:26 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:43:26 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:43:26 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:43:26 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:43:26 2026 - your processes number limit is 61306 Fri Jan 9 10:43:26 2026 - your memory page size is 4096 bytes Fri Jan 9 10:43:26 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:43:26 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:43:26 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:43:26 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:43:26 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:43:26 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:46683 (port auto-assigned) fd 3 Fri Jan 9 10:43:26 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:43:26 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:43:26 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:43:26 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:43:26 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:43:26 2026 - Python main interpreter initialized at 0x7909fff52d10 Fri Jan 9 10:43:26 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:43:26 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:43:26 2026 - python threads support enabled Fri Jan 9 10:43:26 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:43:26 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:43:26 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:43:26 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:43:27 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:43:27 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:43:27 2026 - WSGI app 0 (mountpoint='') ready in 1 seconds on interpreter 0x7909fff52d10 pid: 1782404 (default app) Fri Jan 9 10:43:27 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:43:27 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:43:27 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:43:27 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:43:27 2026 - spawned uWSGI worker 1 (pid: 1822416, cores: 2) Fri Jan 9 10:43:27 2026 - spawned uWSGI worker 2 (pid: 1822417, cores: 2) Fri Jan 9 10:43:27 2026 - Python auto-reloader enabled Fri Jan 9 10:43:27 2026 - spawned uWSGI http 1 (pid: 1822420) Fri Jan 9 10:43:34 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:43:34 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:43:34 2026 - gateway "uWSGI http 1" has been buried (pid: 1822420) Fri Jan 9 10:43:34 2026 - ...gracefully killing workers... Fri Jan 9 10:43:34 2026 - Gracefully killing worker 2 (pid: 1822417)... Fri Jan 9 10:43:34 2026 - Gracefully killing worker 1 (pid: 1822416)... Fri Jan 9 10:43:35 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:43:35 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:43:35 2026 - binary reloading uWSGI... Fri Jan 9 10:43:35 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:43:35 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:43:35 2026 - found fd 3 mapped to socket 0 (127.0.0.1:46683) Fri Jan 9 10:43:35 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:43:35 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:43:35 2026] *** Fri Jan 9 10:43:35 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:43:35 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:43:35 2026 - nodename: ubserver Fri Jan 9 10:43:35 2026 - machine: x86_64 Fri Jan 9 10:43:35 2026 - clock source: unix Fri Jan 9 10:43:35 2026 - pcre jit disabled Fri Jan 9 10:43:35 2026 - detected number of CPU cores: 12 Fri Jan 9 10:43:35 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:43:35 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:43:35 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:43:35 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:43:35 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:43:35 2026 - your processes number limit is 61306 Fri Jan 9 10:43:35 2026 - your memory page size is 4096 bytes Fri Jan 9 10:43:35 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:43:35 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:43:35 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:43:35 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:43:35 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:43:35 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:44857 (port auto-assigned) fd 4 Fri Jan 9 10:43:35 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:43:35 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:43:35 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:43:35 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:43:35 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:43:35 2026 - Python main interpreter initialized at 0x7b438fd52d10 Fri Jan 9 10:43:35 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:43:35 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:43:35 2026 - python threads support enabled Fri Jan 9 10:43:35 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:43:35 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:43:35 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:43:35 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:43:35 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:43:35 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:43:35 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x7b438fd52d10 pid: 1782404 (default app) Fri Jan 9 10:43:35 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:43:35 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:43:35 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:43:35 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:43:35 2026 - spawned uWSGI worker 1 (pid: 1822460, cores: 2) Fri Jan 9 10:43:35 2026 - spawned uWSGI worker 2 (pid: 1822461, cores: 2) Fri Jan 9 10:43:35 2026 - spawned uWSGI http 1 (pid: 1822465) Fri Jan 9 10:43:35 2026 - Python auto-reloader enabled Fri Jan 9 10:45:16 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:45:16 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:45:16 2026 - gateway "uWSGI http 1" has been buried (pid: 1822465) Fri Jan 9 10:45:16 2026 - ...gracefully killing workers... Fri Jan 9 10:45:16 2026 - Gracefully killing worker 2 (pid: 1822461)... Fri Jan 9 10:45:16 2026 - Gracefully killing worker 1 (pid: 1822460)... Fri Jan 9 10:45:17 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:45:17 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:45:17 2026 - binary reloading uWSGI... Fri Jan 9 10:45:17 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:45:17 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:45:17 2026 - found fd 4 mapped to socket 0 (127.0.0.1:44857) Fri Jan 9 10:45:17 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:45:17 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:45:17 2026] *** Fri Jan 9 10:45:17 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:45:17 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:45:17 2026 - nodename: ubserver Fri Jan 9 10:45:17 2026 - machine: x86_64 Fri Jan 9 10:45:17 2026 - clock source: unix Fri Jan 9 10:45:17 2026 - pcre jit disabled Fri Jan 9 10:45:17 2026 - detected number of CPU cores: 12 Fri Jan 9 10:45:17 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:45:17 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:45:17 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:45:17 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:45:17 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:45:17 2026 - your processes number limit is 61306 Fri Jan 9 10:45:17 2026 - your memory page size is 4096 bytes Fri Jan 9 10:45:17 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:45:17 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:45:17 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:45:17 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:45:17 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:45:17 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:33191 (port auto-assigned) fd 3 Fri Jan 9 10:45:17 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:45:17 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:45:17 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:45:17 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:45:17 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:45:17 2026 - Python main interpreter initialized at 0x71e619952d10 Fri Jan 9 10:45:17 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:45:17 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:45:17 2026 - python threads support enabled Fri Jan 9 10:45:17 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:45:17 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:45:17 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:45:17 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:45:17 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:45:17 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:45:17 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x71e619952d10 pid: 1782404 (default app) Fri Jan 9 10:45:17 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:45:17 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:45:17 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:45:17 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:45:17 2026 - spawned uWSGI worker 1 (pid: 1823141, cores: 2) Fri Jan 9 10:45:17 2026 - spawned uWSGI worker 2 (pid: 1823142, cores: 2) Fri Jan 9 10:45:17 2026 - spawned uWSGI http 1 (pid: 1823145) Fri Jan 9 10:45:17 2026 - Python auto-reloader enabled Fri Jan 9 10:46:34 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:46:34 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:46:34 2026 - gateway "uWSGI http 1" has been buried (pid: 1823145) Fri Jan 9 10:46:34 2026 - ...gracefully killing workers... Fri Jan 9 10:46:34 2026 - Gracefully killing worker 1 (pid: 1823141)... Fri Jan 9 10:46:34 2026 - Gracefully killing worker 2 (pid: 1823142)... Fri Jan 9 10:46:35 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:46:35 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:46:35 2026 - binary reloading uWSGI... Fri Jan 9 10:46:35 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:46:35 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:46:35 2026 - found fd 3 mapped to socket 0 (127.0.0.1:33191) Fri Jan 9 10:46:35 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:46:35 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:46:35 2026] *** Fri Jan 9 10:46:35 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:46:35 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:46:35 2026 - nodename: ubserver Fri Jan 9 10:46:35 2026 - machine: x86_64 Fri Jan 9 10:46:35 2026 - clock source: unix Fri Jan 9 10:46:35 2026 - pcre jit disabled Fri Jan 9 10:46:35 2026 - detected number of CPU cores: 12 Fri Jan 9 10:46:35 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:46:35 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:46:35 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:46:35 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:46:35 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:46:35 2026 - your processes number limit is 61306 Fri Jan 9 10:46:35 2026 - your memory page size is 4096 bytes Fri Jan 9 10:46:35 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:46:35 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:46:35 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:46:35 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:46:35 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:46:35 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:40143 (port auto-assigned) fd 4 Fri Jan 9 10:46:35 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:46:35 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:46:35 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:46:35 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:46:35 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:46:35 2026 - Python main interpreter initialized at 0x73bf71752d10 Fri Jan 9 10:46:35 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:46:35 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:46:35 2026 - python threads support enabled Fri Jan 9 10:46:35 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:46:35 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:46:35 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:46:35 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:46:35 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:46:35 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:46:35 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x73bf71752d10 pid: 1782404 (default app) Fri Jan 9 10:46:35 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:46:35 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:46:35 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:46:35 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:46:35 2026 - spawned uWSGI worker 1 (pid: 1823685, cores: 2) Fri Jan 9 10:46:35 2026 - spawned uWSGI worker 2 (pid: 1823688, cores: 2) Fri Jan 9 10:46:35 2026 - Python auto-reloader enabled Fri Jan 9 10:46:35 2026 - spawned uWSGI http 1 (pid: 1823691) Fri Jan 9 10:46:38 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:46:38 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:46:38 2026 - gateway "uWSGI http 1" has been buried (pid: 1823691) Fri Jan 9 10:46:38 2026 - ...gracefully killing workers... Fri Jan 9 10:46:38 2026 - Gracefully killing worker 2 (pid: 1823688)... Fri Jan 9 10:46:38 2026 - Gracefully killing worker 1 (pid: 1823685)... Fri Jan 9 10:46:39 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:46:39 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:46:39 2026 - binary reloading uWSGI... Fri Jan 9 10:46:39 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:46:39 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:46:39 2026 - found fd 4 mapped to socket 0 (127.0.0.1:40143) Fri Jan 9 10:46:39 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:46:39 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:46:39 2026] *** Fri Jan 9 10:46:39 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:46:39 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:46:39 2026 - nodename: ubserver Fri Jan 9 10:46:39 2026 - machine: x86_64 Fri Jan 9 10:46:39 2026 - clock source: unix Fri Jan 9 10:46:39 2026 - pcre jit disabled Fri Jan 9 10:46:39 2026 - detected number of CPU cores: 12 Fri Jan 9 10:46:39 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:46:39 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:46:39 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:46:39 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:46:39 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:46:39 2026 - your processes number limit is 61306 Fri Jan 9 10:46:39 2026 - your memory page size is 4096 bytes Fri Jan 9 10:46:39 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:46:39 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:46:39 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:46:39 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:46:39 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:46:39 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:42627 (port auto-assigned) fd 3 Fri Jan 9 10:46:39 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:46:39 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:46:39 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:46:39 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:46:39 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:46:39 2026 - Python main interpreter initialized at 0x7c9fff552d10 Fri Jan 9 10:46:39 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:46:39 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:46:39 2026 - python threads support enabled Fri Jan 9 10:46:39 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:46:39 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:46:39 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:46:39 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:46:39 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:46:39 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:46:39 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x7c9fff552d10 pid: 1782404 (default app) Fri Jan 9 10:46:39 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:46:39 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:46:39 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:46:39 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:46:39 2026 - spawned uWSGI worker 1 (pid: 1823703, cores: 2) Fri Jan 9 10:46:39 2026 - spawned uWSGI worker 2 (pid: 1823704, cores: 2) Fri Jan 9 10:46:39 2026 - Python auto-reloader enabled Fri Jan 9 10:46:39 2026 - spawned uWSGI http 1 (pid: 1823707) Fri Jan 9 10:47:35 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:47:35 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:47:35 2026 - gateway "uWSGI http 1" has been buried (pid: 1823707) Fri Jan 9 10:47:35 2026 - ...gracefully killing workers... Fri Jan 9 10:47:35 2026 - Gracefully killing worker 2 (pid: 1823704)... Fri Jan 9 10:47:35 2026 - Gracefully killing worker 1 (pid: 1823703)... Fri Jan 9 10:47:36 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:47:36 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:47:36 2026 - binary reloading uWSGI... Fri Jan 9 10:47:36 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:47:36 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:47:36 2026 - found fd 3 mapped to socket 0 (127.0.0.1:42627) Fri Jan 9 10:47:36 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:47:36 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:47:36 2026] *** Fri Jan 9 10:47:36 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:47:36 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:47:36 2026 - nodename: ubserver Fri Jan 9 10:47:36 2026 - machine: x86_64 Fri Jan 9 10:47:36 2026 - clock source: unix Fri Jan 9 10:47:36 2026 - pcre jit disabled Fri Jan 9 10:47:36 2026 - detected number of CPU cores: 12 Fri Jan 9 10:47:36 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:47:36 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:47:36 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:47:36 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:47:36 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:47:36 2026 - your processes number limit is 61306 Fri Jan 9 10:47:36 2026 - your memory page size is 4096 bytes Fri Jan 9 10:47:36 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:47:36 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:47:36 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:47:36 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:47:36 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:47:36 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:41859 (port auto-assigned) fd 4 Fri Jan 9 10:47:36 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:47:36 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:47:36 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:47:36 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:47:36 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:47:37 2026 - Python main interpreter initialized at 0x7b6cf9552d10 Fri Jan 9 10:47:37 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:47:37 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:47:37 2026 - python threads support enabled Fri Jan 9 10:47:37 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:47:37 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:47:37 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:47:37 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:47:37 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:47:37 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:47:37 2026 - WSGI app 0 (mountpoint='') ready in 1 seconds on interpreter 0x7b6cf9552d10 pid: 1782404 (default app) Fri Jan 9 10:47:37 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:47:37 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:47:37 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:47:37 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:47:37 2026 - spawned uWSGI worker 1 (pid: 1823980, cores: 2) Fri Jan 9 10:47:37 2026 - spawned uWSGI worker 2 (pid: 1823981, cores: 2) Fri Jan 9 10:47:37 2026 - spawned uWSGI http 1 (pid: 1823986) Fri Jan 9 10:47:37 2026 - Python auto-reloader enabled Fri Jan 9 10:47:46 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:47:46 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:47:46 2026 - gateway "uWSGI http 1" has been buried (pid: 1823986) Fri Jan 9 10:47:46 2026 - ...gracefully killing workers... Fri Jan 9 10:47:46 2026 - Gracefully killing worker 2 (pid: 1823981)... Fri Jan 9 10:47:46 2026 - Gracefully killing worker 1 (pid: 1823980)... Fri Jan 9 10:47:47 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:47:47 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:47:47 2026 - binary reloading uWSGI... Fri Jan 9 10:47:47 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:47:47 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:47:47 2026 - found fd 4 mapped to socket 0 (127.0.0.1:41859) Fri Jan 9 10:47:47 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:47:47 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:47:47 2026] *** Fri Jan 9 10:47:47 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:47:47 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:47:47 2026 - nodename: ubserver Fri Jan 9 10:47:47 2026 - machine: x86_64 Fri Jan 9 10:47:47 2026 - clock source: unix Fri Jan 9 10:47:47 2026 - pcre jit disabled Fri Jan 9 10:47:47 2026 - detected number of CPU cores: 12 Fri Jan 9 10:47:47 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:47:47 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:47:47 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:47:47 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:47:47 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:47:47 2026 - your processes number limit is 61306 Fri Jan 9 10:47:47 2026 - your memory page size is 4096 bytes Fri Jan 9 10:47:47 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:47:47 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:47:47 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:47:47 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:47:47 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:47:47 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:42165 (port auto-assigned) fd 3 Fri Jan 9 10:47:47 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:47:47 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:47:47 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:47:47 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:47:47 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:47:47 2026 - Python main interpreter initialized at 0x7331bf952d10 Fri Jan 9 10:47:47 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:47:47 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:47:47 2026 - python threads support enabled Fri Jan 9 10:47:47 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:47:47 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:47:47 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:47:47 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:47:47 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:47:47 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:47:47 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x7331bf952d10 pid: 1782404 (default app) Fri Jan 9 10:47:47 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:47:47 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:47:47 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:47:47 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:47:47 2026 - spawned uWSGI worker 1 (pid: 1824088, cores: 2) Fri Jan 9 10:47:47 2026 - spawned uWSGI worker 2 (pid: 1824089, cores: 2) Fri Jan 9 10:47:47 2026 - Python auto-reloader enabled Fri Jan 9 10:47:47 2026 - spawned uWSGI http 1 (pid: 1824094) Fri Jan 9 10:47:59 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:47:59 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:47:59 2026 - gateway "uWSGI http 1" has been buried (pid: 1824094) Fri Jan 9 10:47:59 2026 - ...gracefully killing workers... Fri Jan 9 10:47:59 2026 - Gracefully killing worker 2 (pid: 1824089)... Fri Jan 9 10:47:59 2026 - Gracefully killing worker 1 (pid: 1824088)... Fri Jan 9 10:48:00 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:48:00 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:48:00 2026 - binary reloading uWSGI... Fri Jan 9 10:48:00 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:48:00 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:48:00 2026 - found fd 3 mapped to socket 0 (127.0.0.1:42165) Fri Jan 9 10:48:00 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:48:00 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:48:00 2026] *** Fri Jan 9 10:48:00 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:48:00 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:48:00 2026 - nodename: ubserver Fri Jan 9 10:48:00 2026 - machine: x86_64 Fri Jan 9 10:48:00 2026 - clock source: unix Fri Jan 9 10:48:00 2026 - pcre jit disabled Fri Jan 9 10:48:00 2026 - detected number of CPU cores: 12 Fri Jan 9 10:48:00 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:48:00 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:48:00 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:48:00 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:48:00 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:48:00 2026 - your processes number limit is 61306 Fri Jan 9 10:48:00 2026 - your memory page size is 4096 bytes Fri Jan 9 10:48:00 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:48:00 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:48:00 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:48:00 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:48:00 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:48:00 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:45333 (port auto-assigned) fd 4 Fri Jan 9 10:48:00 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:48:00 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:48:00 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:48:00 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:48:00 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:48:00 2026 - Python main interpreter initialized at 0x7e72ee152d10 Fri Jan 9 10:48:00 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:48:00 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:48:00 2026 - python threads support enabled Fri Jan 9 10:48:00 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:48:00 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:48:00 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:48:00 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:48:00 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:48:00 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:48:00 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x7e72ee152d10 pid: 1782404 (default app) Fri Jan 9 10:48:00 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:48:00 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:48:00 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:48:00 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:48:00 2026 - spawned uWSGI worker 1 (pid: 1824143, cores: 2) Fri Jan 9 10:48:00 2026 - spawned uWSGI worker 2 (pid: 1824144, cores: 2) Fri Jan 9 10:48:00 2026 - spawned uWSGI http 1 (pid: 1824148) Fri Jan 9 10:48:00 2026 - Python auto-reloader enabled Fri Jan 9 10:50:08 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:50:08 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:50:08 2026 - gateway "uWSGI http 1" has been buried (pid: 1824148) Fri Jan 9 10:50:08 2026 - ...gracefully killing workers... Fri Jan 9 10:50:08 2026 - Gracefully killing worker 2 (pid: 1824144)... Fri Jan 9 10:50:08 2026 - Gracefully killing worker 1 (pid: 1824143)... Fri Jan 9 10:50:09 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:50:09 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:50:09 2026 - binary reloading uWSGI... Fri Jan 9 10:50:09 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:50:09 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:50:09 2026 - found fd 4 mapped to socket 0 (127.0.0.1:45333) Fri Jan 9 10:50:09 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:50:09 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:50:09 2026] *** Fri Jan 9 10:50:09 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:50:09 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:50:09 2026 - nodename: ubserver Fri Jan 9 10:50:09 2026 - machine: x86_64 Fri Jan 9 10:50:09 2026 - clock source: unix Fri Jan 9 10:50:09 2026 - pcre jit disabled Fri Jan 9 10:50:09 2026 - detected number of CPU cores: 12 Fri Jan 9 10:50:09 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:50:09 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:50:09 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:50:09 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:50:09 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:50:09 2026 - your processes number limit is 61306 Fri Jan 9 10:50:09 2026 - your memory page size is 4096 bytes Fri Jan 9 10:50:09 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:50:09 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:50:09 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:50:09 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:50:09 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:50:09 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:45961 (port auto-assigned) fd 3 Fri Jan 9 10:50:09 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:50:09 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:50:09 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:50:09 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:50:09 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:50:09 2026 - Python main interpreter initialized at 0x78e141d52d10 Fri Jan 9 10:50:09 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:50:09 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:50:09 2026 - python threads support enabled Fri Jan 9 10:50:09 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:50:09 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:50:09 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:50:09 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:50:09 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:50:09 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:50:09 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x78e141d52d10 pid: 1782404 (default app) Fri Jan 9 10:50:09 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:50:09 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:50:09 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:50:09 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:50:09 2026 - spawned uWSGI worker 1 (pid: 1824879, cores: 2) Fri Jan 9 10:50:09 2026 - spawned uWSGI worker 2 (pid: 1824880, cores: 2) Fri Jan 9 10:50:09 2026 - spawned uWSGI http 1 (pid: 1824883) Fri Jan 9 10:50:09 2026 - Python auto-reloader enabled 2026-01-09 10:50:13 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 10:50:13 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: V4PysTsq/lNT3/wFazWDLWyc0dGuq2JMkrVDkOzmHWSj2Ei3LR... 2026-01-09 10:50:13 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: 03b9d5be793ca95eebdac7c887a610f60dfe77f2 2026-01-09 10:50:13 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: 03b9d5be793ca95eebdac7c887a610f60dfe77f2 2026-01-09 10:50:13 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 10:50:13 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 10:50:13 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=text 2026-01-09 10:50:13 - gx_gp_monitor.wechat.callback_server - INFO - 处理文本消息: content=大化..., user=WeiJueSen 2026-01-09 10:50:13 - gx_gp_monitor.wechat.message_handler - INFO - 处理文本消息: 大化, user: WeiJueSen 2026-01-09 10:50:13 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 关键词搜索: ['大化'] 2026-01-09 10:50:13 - gx_gp_monitor.main - INFO - === 广西政府采购网公告监控系统启动 === 2026-01-09 10:50:13 - gx_gp_monitor.main - INFO - 版本: 1.0.0 2026-01-09 10:50:13 - gx_gp_monitor.main - INFO - 配置文件: 默认配置 2026-01-09 10:50:13 - gx_gp_monitor.core.reliability - INFO - 健康检查通过 2026-01-09 10:50:13 - gx_gp_monitor.core.database - INFO - 数据库连接池初始化成功 2026-01-09 10:50:13 - gx_gp_monitor.core.database - INFO - 开始初始化数据库表结构 2026-01-09 10:50:13 - gx_gp_monitor.core.database - INFO - 数据库表结构初始化完成 2026-01-09 10:50:13 - gx_gp_monitor.storage.postgresql - INFO - 存储初始化完成 2026-01-09 10:50:13 - gx_gp_monitor.main - INFO - 应用初始化完成 2026-01-09 10:50:13 - gx_gp_monitor.main - INFO - 开始执行搜索任务 (手动搜索: True) 2026-01-09 10:50:13 - gx_gp_monitor.crawler.spider - INFO - 开始爬取 13 个公告来源 2026-01-09 10:50:13 - gx_gp_monitor - INFO - 开始爬取 采购公告 2026-01-09 10:50:13 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:50:13 - gx_gp_monitor - INFO - 采购公告 爬取完成,共获取 100 条公告,耗时 0.45秒 2026-01-09 10:50:13 - gx_gp_monitor - INFO - 开始爬取 结果公告 2026-01-09 10:50:14 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:50:14 - gx_gp_monitor - INFO - 结果公告 爬取完成,共获取 100 条公告,耗时 0.22秒 2026-01-09 10:50:14 - gx_gp_monitor - INFO - 开始爬取 合同公告 2026-01-09 10:50:14 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:50:14 - gx_gp_monitor - INFO - 合同公告 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 10:50:14 - gx_gp_monitor - INFO - 开始爬取 更正公告 2026-01-09 10:50:14 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:50:14 - gx_gp_monitor - INFO - 更正公告 爬取完成,共获取 100 条公告,耗时 0.16秒 2026-01-09 10:50:14 - gx_gp_monitor - INFO - 开始爬取 招标文件预公示 2026-01-09 10:50:14 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:50:14 - gx_gp_monitor - INFO - 招标文件预公示 爬取完成,共获取 100 条公告,耗时 0.15秒 2026-01-09 10:50:14 - gx_gp_monitor - INFO - 开始爬取 单一来源公示 2026-01-09 10:50:14 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:50:14 - gx_gp_monitor - INFO - 单一来源公示 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 10:50:14 - gx_gp_monitor - INFO - 开始爬取 电子卖场公示 2026-01-09 10:50:15 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:50:15 - gx_gp_monitor - INFO - 电子卖场公示 爬取完成,共获取 100 条公告,耗时 0.42秒 2026-01-09 10:50:15 - gx_gp_monitor - INFO - 开始爬取 履约验收公示 2026-01-09 10:50:15 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:50:15 - gx_gp_monitor - INFO - 履约验收公示 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 10:50:15 - gx_gp_monitor - INFO - 开始爬取 工程类公告 2026-01-09 10:50:15 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:50:15 - gx_gp_monitor - INFO - 工程类公告 爬取完成,共获取 100 条公告,耗时 0.22秒 2026-01-09 10:50:15 - gx_gp_monitor - INFO - 开始爬取 框架协议征集公告 2026-01-09 10:50:15 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:50:15 - gx_gp_monitor - INFO - 框架协议征集公告 爬取完成,共获取 100 条公告,耗时 0.23秒 2026-01-09 10:50:15 - gx_gp_monitor - INFO - 开始爬取 框架协议入围结果公告 2026-01-09 10:50:16 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:50:16 - gx_gp_monitor - INFO - 框架协议入围结果公告 爬取完成,共获取 100 条公告,耗时 0.17秒 2026-01-09 10:50:16 - gx_gp_monitor - INFO - 开始爬取 框架协议成交结果汇总公告 2026-01-09 10:50:16 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:50:16 - gx_gp_monitor - INFO - 框架协议成交结果汇总公告 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 10:50:16 - gx_gp_monitor - INFO - 开始爬取 采购意向公开 2026-01-09 10:50:16 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:50:16 - gx_gp_monitor - INFO - 采购意向公开 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 10:50:16 - gx_gp_monitor.crawler.spider - INFO - 爬取完成: 共处理 13 个来源,成功 13 个,失败 0 个,获取 1300 条公告 2026-01-09 10:50:16 - gx_gp_monitor.main - INFO - 搜索到 1300 条原始公告 2026-01-09 10:50:16 - gx_gp_monitor.main - INFO - 手动搜索模式:跳过数据库保存 2026-01-09 10:50:16 - gx_gp_monitor.filters.filters - INFO - 日期筛选: 1300 -> 217 条公告 2026-01-09 10:50:16 - gx_gp_monitor.filters.filters - INFO - 关键词筛选: 217 -> 1 条公告 2026-01-09 10:50:16 - gx_gp_monitor.filters.filters - INFO - 来源筛选: 1 -> 1 条公告 2026-01-09 10:50:16 - gx_gp_monitor.main - INFO - 筛选后剩余 1 条公告 2026-01-09 10:50:16 - gx_gp_monitor.main - INFO - 手动爬取模式:跳过筛选后公告的数据库保存 2026-01-09 10:50:16 - gx_gp_monitor.main - INFO - 爬取任务完成: {'success': True, 'total_crawled': 1300, 'filtered': 1, 'saved': 0, 'markdown_generated': False, 'notification_sent': True, 'filter_stats': {'keyword_filtered': 216, 'date_filtered': 1083, 'duplicate_filtered': 0, 'source_filtered': 0}, 'filtered_announcements': [Announcement(id=None, title='大化瑶族自治县2025年度国土变更(日常变更)调查项目合同公告', publish_date=datetime.datetime(2026, 1, 9, 10, 2, 19), purchase_name='大化瑶族自治县自然资源局', content_url='https://zfcg.gxzf.gov.cn/site/detail?parentId=66485&articleId=NSAtgiyTEYUaFq3dcNs6ig==', source_code='ZcyAnnouncement3', source_name='合同公告', announcement_type=, crawled_at=datetime.datetime(2026, 1, 9, 10, 50, 14, 210634), created_at=None, updated_at=None, content_hash='9270849ec53ce195b3fc4de103ef656a', keyword_matched=True, date_filtered=True, is_new=True, is_today=True)]} 2026-01-09 10:50:16 - gx_gp_monitor.notification.wechat - INFO - 企业微信服务初始化完成 2026-01-09 10:50:16 - gx_gp_monitor.notification.wechat - INFO - 成功获取企业微信访问令牌 2026-01-09 10:50:16 - gx_gp_monitor.notification.wechat - INFO - Markdown消息发送成功 {address space usage: 241356800 bytes/230MB} {rss usage: 54054912 bytes/51MB} [pid: 1824880|app: 0|req: 1/1] 113.108.92.100 () {36 vars in 679 bytes} [Fri Jan 9 10:50:13 2026] POST /api/v1/wechat/callback?msg_signature=03b9d5be793ca95eebdac7c887a610f60dfe77f2×tamp=1767927013&nonce=1768112259 => generated 626 bytes in 3651 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 0) Fri Jan 9 10:50:36 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:50:36 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:50:36 2026 - gateway "uWSGI http 1" has been buried (pid: 1824883) Fri Jan 9 10:50:36 2026 - ...gracefully killing workers... Fri Jan 9 10:50:36 2026 - Gracefully killing worker 2 (pid: 1824880)... Fri Jan 9 10:50:36 2026 - Gracefully killing worker 1 (pid: 1824879)... Fri Jan 9 10:50:37 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:50:37 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:50:37 2026 - binary reloading uWSGI... Fri Jan 9 10:50:37 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:50:37 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:50:37 2026 - found fd 3 mapped to socket 0 (127.0.0.1:45961) Fri Jan 9 10:50:37 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:50:37 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:50:37 2026] *** Fri Jan 9 10:50:37 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:50:37 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:50:37 2026 - nodename: ubserver Fri Jan 9 10:50:37 2026 - machine: x86_64 Fri Jan 9 10:50:37 2026 - clock source: unix Fri Jan 9 10:50:37 2026 - pcre jit disabled Fri Jan 9 10:50:37 2026 - detected number of CPU cores: 12 Fri Jan 9 10:50:37 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:50:37 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:50:37 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:50:37 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:50:37 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:50:37 2026 - your processes number limit is 61306 Fri Jan 9 10:50:37 2026 - your memory page size is 4096 bytes Fri Jan 9 10:50:37 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:50:37 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:50:37 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:50:37 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:50:37 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:50:37 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:38249 (port auto-assigned) fd 4 Fri Jan 9 10:50:37 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:50:37 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:50:37 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:50:37 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:50:37 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:50:37 2026 - Python main interpreter initialized at 0x744f9e152d10 Fri Jan 9 10:50:37 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:50:37 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:50:37 2026 - python threads support enabled Fri Jan 9 10:50:37 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:50:37 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:50:37 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:50:37 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:50:38 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:50:38 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:50:38 2026 - WSGI app 0 (mountpoint='') ready in 1 seconds on interpreter 0x744f9e152d10 pid: 1782404 (default app) Fri Jan 9 10:50:38 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:50:38 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:50:38 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:50:38 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:50:38 2026 - spawned uWSGI worker 1 (pid: 1825004, cores: 2) Fri Jan 9 10:50:38 2026 - spawned uWSGI worker 2 (pid: 1825005, cores: 2) Fri Jan 9 10:50:38 2026 - spawned uWSGI http 1 (pid: 1825008) Fri Jan 9 10:50:38 2026 - Python auto-reloader enabled Fri Jan 9 10:52:41 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:52:41 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:52:41 2026 - gateway "uWSGI http 1" has been buried (pid: 1825008) Fri Jan 9 10:52:41 2026 - ...gracefully killing workers... Fri Jan 9 10:52:41 2026 - Gracefully killing worker 2 (pid: 1825005)... Fri Jan 9 10:52:41 2026 - Gracefully killing worker 1 (pid: 1825004)... Fri Jan 9 10:52:42 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:52:42 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:52:42 2026 - binary reloading uWSGI... Fri Jan 9 10:52:42 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:52:42 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:52:42 2026 - found fd 4 mapped to socket 0 (127.0.0.1:38249) Fri Jan 9 10:52:42 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:52:42 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:52:42 2026] *** Fri Jan 9 10:52:42 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:52:42 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:52:42 2026 - nodename: ubserver Fri Jan 9 10:52:42 2026 - machine: x86_64 Fri Jan 9 10:52:42 2026 - clock source: unix Fri Jan 9 10:52:42 2026 - pcre jit disabled Fri Jan 9 10:52:42 2026 - detected number of CPU cores: 12 Fri Jan 9 10:52:42 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:52:42 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:52:42 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:52:42 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:52:42 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:52:42 2026 - your processes number limit is 61306 Fri Jan 9 10:52:42 2026 - your memory page size is 4096 bytes Fri Jan 9 10:52:42 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:52:42 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:52:42 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:52:42 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:52:42 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:52:42 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:40383 (port auto-assigned) fd 3 Fri Jan 9 10:52:42 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:52:42 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:52:42 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:52:42 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:52:42 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:52:42 2026 - Python main interpreter initialized at 0x7125be152d10 Fri Jan 9 10:52:42 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:52:42 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:52:42 2026 - python threads support enabled Fri Jan 9 10:52:42 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:52:42 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:52:42 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:52:42 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:52:42 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:52:42 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:52:42 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x7125be152d10 pid: 1782404 (default app) Fri Jan 9 10:52:42 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:52:42 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:52:42 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:52:42 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:52:42 2026 - spawned uWSGI worker 1 (pid: 1825625, cores: 2) Fri Jan 9 10:52:42 2026 - spawned uWSGI worker 2 (pid: 1825626, cores: 2) Fri Jan 9 10:52:42 2026 - Python auto-reloader enabled Fri Jan 9 10:52:42 2026 - spawned uWSGI http 1 (pid: 1825630) Fri Jan 9 10:52:55 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:52:55 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:52:55 2026 - gateway "uWSGI http 1" has been buried (pid: 1825630) Fri Jan 9 10:52:55 2026 - ...gracefully killing workers... Fri Jan 9 10:52:55 2026 - Gracefully killing worker 2 (pid: 1825626)... Fri Jan 9 10:52:55 2026 - Gracefully killing worker 1 (pid: 1825625)... Fri Jan 9 10:52:56 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:52:56 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:52:56 2026 - binary reloading uWSGI... Fri Jan 9 10:52:56 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:52:56 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:52:56 2026 - found fd 3 mapped to socket 0 (127.0.0.1:40383) Fri Jan 9 10:52:56 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:52:56 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:52:56 2026] *** Fri Jan 9 10:52:56 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:52:56 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:52:56 2026 - nodename: ubserver Fri Jan 9 10:52:56 2026 - machine: x86_64 Fri Jan 9 10:52:56 2026 - clock source: unix Fri Jan 9 10:52:56 2026 - pcre jit disabled Fri Jan 9 10:52:56 2026 - detected number of CPU cores: 12 Fri Jan 9 10:52:56 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:52:56 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:52:56 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:52:56 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:52:56 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:52:56 2026 - your processes number limit is 61306 Fri Jan 9 10:52:56 2026 - your memory page size is 4096 bytes Fri Jan 9 10:52:56 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:52:56 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:52:56 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:52:56 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:52:56 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:52:56 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:33369 (port auto-assigned) fd 4 Fri Jan 9 10:52:56 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:52:56 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:52:56 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:52:56 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:52:56 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:52:56 2026 - Python main interpreter initialized at 0x7b887f752d10 Fri Jan 9 10:52:56 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:52:56 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:52:56 2026 - python threads support enabled Fri Jan 9 10:52:56 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:52:56 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:52:56 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:52:56 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:52:56 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:52:56 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:52:56 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x7b887f752d10 pid: 1782404 (default app) Fri Jan 9 10:52:56 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:52:56 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:52:56 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:52:56 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:52:56 2026 - spawned uWSGI worker 1 (pid: 1825660, cores: 2) Fri Jan 9 10:52:56 2026 - spawned uWSGI worker 2 (pid: 1825661, cores: 2) Fri Jan 9 10:52:56 2026 - Python auto-reloader enabled Fri Jan 9 10:52:56 2026 - spawned uWSGI http 1 (pid: 1825666) Fri Jan 9 10:53:19 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:53:19 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:53:19 2026 - gateway "uWSGI http 1" has been buried (pid: 1825666) Fri Jan 9 10:53:19 2026 - ...gracefully killing workers... Fri Jan 9 10:53:19 2026 - Gracefully killing worker 1 (pid: 1825660)... Fri Jan 9 10:53:19 2026 - Gracefully killing worker 2 (pid: 1825661)... Fri Jan 9 10:53:20 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:53:20 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:53:20 2026 - binary reloading uWSGI... Fri Jan 9 10:53:20 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:53:20 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:53:20 2026 - found fd 4 mapped to socket 0 (127.0.0.1:33369) Fri Jan 9 10:53:20 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:53:20 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:53:20 2026] *** Fri Jan 9 10:53:20 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:53:20 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:53:20 2026 - nodename: ubserver Fri Jan 9 10:53:20 2026 - machine: x86_64 Fri Jan 9 10:53:20 2026 - clock source: unix Fri Jan 9 10:53:20 2026 - pcre jit disabled Fri Jan 9 10:53:20 2026 - detected number of CPU cores: 12 Fri Jan 9 10:53:20 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:53:20 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:53:20 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:53:20 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:53:20 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:53:20 2026 - your processes number limit is 61306 Fri Jan 9 10:53:20 2026 - your memory page size is 4096 bytes Fri Jan 9 10:53:20 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:53:20 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:53:20 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:53:20 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:53:20 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:53:20 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:32943 (port auto-assigned) fd 3 Fri Jan 9 10:53:20 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:53:20 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:53:20 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:53:20 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:53:20 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:53:20 2026 - Python main interpreter initialized at 0x7f6714552d10 Fri Jan 9 10:53:20 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:53:20 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:53:20 2026 - python threads support enabled Fri Jan 9 10:53:20 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:53:20 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:53:20 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:53:20 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:53:20 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:53:20 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:53:20 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x7f6714552d10 pid: 1782404 (default app) Fri Jan 9 10:53:20 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:53:20 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:53:20 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:53:20 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:53:20 2026 - spawned uWSGI worker 1 (pid: 1825809, cores: 2) Fri Jan 9 10:53:20 2026 - spawned uWSGI worker 2 (pid: 1825810, cores: 2) Fri Jan 9 10:53:20 2026 - spawned uWSGI http 1 (pid: 1825814) Fri Jan 9 10:53:20 2026 - Python auto-reloader enabled Fri Jan 9 10:53:45 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:53:45 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:53:45 2026 - gateway "uWSGI http 1" has been buried (pid: 1825814) Fri Jan 9 10:53:45 2026 - ...gracefully killing workers... Fri Jan 9 10:53:45 2026 - Gracefully killing worker 1 (pid: 1825809)... Fri Jan 9 10:53:45 2026 - Gracefully killing worker 2 (pid: 1825810)... Fri Jan 9 10:53:46 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:53:46 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:53:46 2026 - binary reloading uWSGI... Fri Jan 9 10:53:46 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:53:46 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:53:46 2026 - found fd 3 mapped to socket 0 (127.0.0.1:32943) Fri Jan 9 10:53:46 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:53:46 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:53:46 2026] *** Fri Jan 9 10:53:46 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:53:46 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:53:46 2026 - nodename: ubserver Fri Jan 9 10:53:46 2026 - machine: x86_64 Fri Jan 9 10:53:46 2026 - clock source: unix Fri Jan 9 10:53:46 2026 - pcre jit disabled Fri Jan 9 10:53:46 2026 - detected number of CPU cores: 12 Fri Jan 9 10:53:46 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:53:46 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:53:46 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:53:46 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:53:46 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:53:46 2026 - your processes number limit is 61306 Fri Jan 9 10:53:46 2026 - your memory page size is 4096 bytes Fri Jan 9 10:53:46 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:53:46 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:53:46 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:53:46 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:53:46 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:53:46 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:45363 (port auto-assigned) fd 4 Fri Jan 9 10:53:46 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:53:46 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:53:46 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:53:46 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:53:46 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:53:46 2026 - Python main interpreter initialized at 0x7c762f152d10 Fri Jan 9 10:53:46 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:53:46 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:53:46 2026 - python threads support enabled Fri Jan 9 10:53:46 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:53:46 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:53:46 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:53:46 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:53:46 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:53:46 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:53:46 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x7c762f152d10 pid: 1782404 (default app) Fri Jan 9 10:53:46 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:53:46 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:53:46 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:53:46 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:53:46 2026 - spawned uWSGI worker 1 (pid: 1825892, cores: 2) Fri Jan 9 10:53:46 2026 - spawned uWSGI worker 2 (pid: 1825893, cores: 2) Fri Jan 9 10:53:46 2026 - spawned uWSGI http 1 (pid: 1825897) Fri Jan 9 10:53:46 2026 - Python auto-reloader enabled 2026-01-09 10:54:03 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 10:54:03 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: Uo4QU84T+D2cpkopqB0HZAhYIxAzg7bxLwDzgVH/QDLap7sKHL... 2026-01-09 10:54:03 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: b100a5fed3e9702af41bd289efb1160218ea3759 2026-01-09 10:54:03 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: b100a5fed3e9702af41bd289efb1160218ea3759 2026-01-09 10:54:03 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 10:54:03 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 10:54:03 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=text 2026-01-09 10:54:03 - gx_gp_monitor.wechat.callback_server - INFO - 处理文本消息: content=大化..., user=WeiJueSen 2026-01-09 10:54:03 - gx_gp_monitor.wechat.message_handler - INFO - 处理文本消息: 大化, user: WeiJueSen 2026-01-09 10:54:03 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 关键词搜索: ['大化'] 2026-01-09 10:54:03 - gx_gp_monitor.main - INFO - === 广西政府采购网公告监控系统启动 === 2026-01-09 10:54:03 - gx_gp_monitor.main - INFO - 版本: 1.0.0 2026-01-09 10:54:03 - gx_gp_monitor.main - INFO - 配置文件: 默认配置 2026-01-09 10:54:03 - gx_gp_monitor.core.reliability - INFO - 健康检查通过 2026-01-09 10:54:03 - gx_gp_monitor.core.database - INFO - 数据库连接池初始化成功 2026-01-09 10:54:03 - gx_gp_monitor.core.database - INFO - 开始初始化数据库表结构 2026-01-09 10:54:03 - gx_gp_monitor.core.database - INFO - 数据库表结构初始化完成 2026-01-09 10:54:03 - gx_gp_monitor.storage.postgresql - INFO - 存储初始化完成 2026-01-09 10:54:03 - gx_gp_monitor.main - INFO - 应用初始化完成 2026-01-09 10:54:03 - gx_gp_monitor.main - INFO - 开始执行搜索任务 (手动搜索: True) 2026-01-09 10:54:03 - gx_gp_monitor.crawler.spider - INFO - 开始爬取 13 个公告来源 2026-01-09 10:54:03 - gx_gp_monitor - INFO - 开始爬取 采购公告 2026-01-09 10:54:08 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 10:54:08 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: Uo4QU84T+D2cpkopqB0HZAhYIxAzg7bxLwDzgVH/QDLap7sKHL... 2026-01-09 10:54:08 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: b100a5fed3e9702af41bd289efb1160218ea3759 2026-01-09 10:54:08 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: b100a5fed3e9702af41bd289efb1160218ea3759 2026-01-09 10:54:08 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 10:54:08 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 10:54:08 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=text 2026-01-09 10:54:08 - gx_gp_monitor.wechat.callback_server - INFO - 处理文本消息: content=大化..., user=WeiJueSen 2026-01-09 10:54:08 - gx_gp_monitor.wechat.message_handler - INFO - 处理文本消息: 大化, user: WeiJueSen 2026-01-09 10:54:08 - gx_gp_monitor.wechat.message_handler - INFO - 检测到重复请求: user=WeiJueSen, content=大化... {address space usage: 247705600 bytes/236MB} {rss usage: 59969536 bytes/57MB} [pid: 1825892|app: 0|req: 2/1] 106.55.201.217 () {36 vars in 679 bytes} [Fri Jan 9 10:54:08 2026] POST /api/v1/wechat/callback?msg_signature=b100a5fed3e9702af41bd289efb1160218ea3759×tamp=1767927243&nonce=1768396874 => generated 626 bytes in 1 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 1) 2026-01-09 10:54:34 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:54:34 - gx_gp_monitor - INFO - 采购公告 爬取完成,共获取 100 条公告,耗时 30.40秒 2026-01-09 10:54:34 - gx_gp_monitor - INFO - 开始爬取 结果公告 2026-01-09 10:54:34 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:54:34 - gx_gp_monitor - INFO - 结果公告 爬取完成,共获取 100 条公告,耗时 0.22秒 2026-01-09 10:54:34 - gx_gp_monitor - INFO - 开始爬取 合同公告 2026-01-09 10:54:34 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:54:34 - gx_gp_monitor - INFO - 合同公告 爬取完成,共获取 100 条公告,耗时 0.24秒 2026-01-09 10:54:34 - gx_gp_monitor - INFO - 开始爬取 更正公告 2026-01-09 10:54:34 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:54:34 - gx_gp_monitor - INFO - 更正公告 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 10:54:34 - gx_gp_monitor - INFO - 开始爬取 招标文件预公示 2026-01-09 10:54:35 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:54:35 - gx_gp_monitor - INFO - 招标文件预公示 爬取完成,共获取 100 条公告,耗时 0.21秒 2026-01-09 10:54:35 - gx_gp_monitor - INFO - 开始爬取 单一来源公示 2026-01-09 10:54:35 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:54:35 - gx_gp_monitor - INFO - 单一来源公示 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 10:54:35 - gx_gp_monitor - INFO - 开始爬取 电子卖场公示 2026-01-09 10:54:35 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:54:35 - gx_gp_monitor - INFO - 电子卖场公示 爬取完成,共获取 100 条公告,耗时 0.44秒 2026-01-09 10:54:35 - gx_gp_monitor - INFO - 开始爬取 履约验收公示 2026-01-09 10:54:35 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:54:35 - gx_gp_monitor - INFO - 履约验收公示 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 10:54:35 - gx_gp_monitor - INFO - 开始爬取 工程类公告 2026-01-09 10:54:36 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:54:36 - gx_gp_monitor - INFO - 工程类公告 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 10:54:36 - gx_gp_monitor - INFO - 开始爬取 框架协议征集公告 2026-01-09 10:54:36 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:54:36 - gx_gp_monitor - INFO - 框架协议征集公告 爬取完成,共获取 100 条公告,耗时 0.16秒 2026-01-09 10:54:36 - gx_gp_monitor - INFO - 开始爬取 框架协议入围结果公告 2026-01-09 10:54:36 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:54:36 - gx_gp_monitor - INFO - 框架协议入围结果公告 爬取完成,共获取 100 条公告,耗时 0.16秒 2026-01-09 10:54:36 - gx_gp_monitor - INFO - 开始爬取 框架协议成交结果汇总公告 2026-01-09 10:54:36 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:54:36 - gx_gp_monitor - INFO - 框架协议成交结果汇总公告 爬取完成,共获取 100 条公告,耗时 0.17秒 2026-01-09 10:54:36 - gx_gp_monitor - INFO - 开始爬取 采购意向公开 2026-01-09 10:54:36 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 10:54:36 - gx_gp_monitor - INFO - 采购意向公开 爬取完成,共获取 100 条公告,耗时 0.21秒 2026-01-09 10:54:36 - gx_gp_monitor.crawler.spider - INFO - 爬取完成: 共处理 13 个来源,成功 13 个,失败 0 个,获取 1300 条公告 2026-01-09 10:54:36 - gx_gp_monitor.main - INFO - 搜索到 1300 条原始公告 2026-01-09 10:54:36 - gx_gp_monitor.main - INFO - 手动搜索模式:跳过数据库保存 2026-01-09 10:54:36 - gx_gp_monitor.filters.filters - INFO - 日期筛选: 1300 -> 220 条公告 2026-01-09 10:54:36 - gx_gp_monitor.filters.filters - INFO - 关键词筛选: 220 -> 1 条公告 2026-01-09 10:54:36 - gx_gp_monitor.filters.filters - INFO - 来源筛选: 1 -> 1 条公告 2026-01-09 10:54:36 - gx_gp_monitor.main - INFO - 筛选后剩余 1 条公告 2026-01-09 10:54:36 - gx_gp_monitor.main - INFO - 手动爬取模式:跳过筛选后公告的数据库保存 2026-01-09 10:54:36 - gx_gp_monitor.main - INFO - 爬取任务完成: {'success': True, 'total_crawled': 1300, 'filtered': 1, 'saved': 0, 'markdown_generated': False, 'notification_sent': True, 'filter_stats': {'keyword_filtered': 219, 'date_filtered': 1080, 'duplicate_filtered': 0, 'source_filtered': 0}, 'filtered_announcements': [Announcement(id=None, title='大化瑶族自治县2025年度国土变更(日常变更)调查项目合同公告', publish_date=datetime.datetime(2026, 1, 9, 10, 2, 19), purchase_name='大化瑶族自治县自然资源局', content_url='https://zfcg.gxzf.gov.cn/site/detail?parentId=66485&articleId=NSAtgiyTEYUaFq3dcNs6ig==', source_code='ZcyAnnouncement3', source_name='合同公告', announcement_type=, crawled_at=datetime.datetime(2026, 1, 9, 10, 54, 34, 478758), created_at=None, updated_at=None, content_hash='9270849ec53ce195b3fc4de103ef656a', keyword_matched=True, date_filtered=True, is_new=True, is_today=True)]} 2026-01-09 10:54:36 - gx_gp_monitor.notification.wechat - INFO - 企业微信服务初始化完成 2026-01-09 10:54:37 - gx_gp_monitor.notification.wechat - INFO - 成功获取企业微信访问令牌 2026-01-09 10:54:37 - gx_gp_monitor.notification.wechat - INFO - Markdown消息发送成功 {address space usage: 241319936 bytes/230MB} {rss usage: 53989376 bytes/51MB} [pid: 1825892|app: 0|req: 2/2] 183.47.117.101 () {36 vars in 678 bytes} [Fri Jan 9 10:54:03 2026] POST /api/v1/wechat/callback?msg_signature=b100a5fed3e9702af41bd289efb1160218ea3759×tamp=1767927243&nonce=1768396874 => generated 626 bytes in 33741 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 0) Fri Jan 9 10:55:15 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:55:15 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:55:15 2026 - gateway "uWSGI http 1" has been buried (pid: 1825897) Fri Jan 9 10:55:15 2026 - ...gracefully killing workers... Fri Jan 9 10:55:15 2026 - Gracefully killing worker 1 (pid: 1825892)... Fri Jan 9 10:55:15 2026 - Gracefully killing worker 2 (pid: 1825893)... Fri Jan 9 10:55:16 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:55:16 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:55:16 2026 - binary reloading uWSGI... Fri Jan 9 10:55:16 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:55:16 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:55:16 2026 - found fd 4 mapped to socket 0 (127.0.0.1:45363) Fri Jan 9 10:55:16 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:55:16 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:55:16 2026] *** Fri Jan 9 10:55:16 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:55:16 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:55:16 2026 - nodename: ubserver Fri Jan 9 10:55:16 2026 - machine: x86_64 Fri Jan 9 10:55:16 2026 - clock source: unix Fri Jan 9 10:55:16 2026 - pcre jit disabled Fri Jan 9 10:55:16 2026 - detected number of CPU cores: 12 Fri Jan 9 10:55:16 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:55:16 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:55:16 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:55:16 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:55:16 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:55:16 2026 - your processes number limit is 61306 Fri Jan 9 10:55:16 2026 - your memory page size is 4096 bytes Fri Jan 9 10:55:16 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:55:16 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:55:16 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:55:16 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:55:16 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:55:16 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:36675 (port auto-assigned) fd 3 Fri Jan 9 10:55:16 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:55:16 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:55:16 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:55:16 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:55:16 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:55:16 2026 - Python main interpreter initialized at 0x7af140b52d10 Fri Jan 9 10:55:16 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:55:16 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:55:16 2026 - python threads support enabled Fri Jan 9 10:55:16 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:55:16 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:55:16 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:55:16 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:55:16 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:55:16 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:55:16 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x7af140b52d10 pid: 1782404 (default app) Fri Jan 9 10:55:16 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:55:16 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:55:16 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:55:16 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:55:16 2026 - spawned uWSGI worker 1 (pid: 1826499, cores: 2) Fri Jan 9 10:55:16 2026 - spawned uWSGI worker 2 (pid: 1826500, cores: 2) Fri Jan 9 10:55:16 2026 - spawned uWSGI http 1 (pid: 1826503) Fri Jan 9 10:55:16 2026 - Python auto-reloader enabled Fri Jan 9 10:55:33 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:55:33 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:55:33 2026 - gateway "uWSGI http 1" has been buried (pid: 1826503) Fri Jan 9 10:55:33 2026 - ...gracefully killing workers... Fri Jan 9 10:55:33 2026 - Gracefully killing worker 2 (pid: 1826500)... Fri Jan 9 10:55:33 2026 - Gracefully killing worker 1 (pid: 1826499)... Fri Jan 9 10:55:34 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:55:34 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:55:34 2026 - binary reloading uWSGI... Fri Jan 9 10:55:34 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:55:34 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:55:34 2026 - found fd 3 mapped to socket 0 (127.0.0.1:36675) Fri Jan 9 10:55:34 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:55:34 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:55:34 2026] *** Fri Jan 9 10:55:34 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:55:34 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:55:34 2026 - nodename: ubserver Fri Jan 9 10:55:34 2026 - machine: x86_64 Fri Jan 9 10:55:34 2026 - clock source: unix Fri Jan 9 10:55:34 2026 - pcre jit disabled Fri Jan 9 10:55:34 2026 - detected number of CPU cores: 12 Fri Jan 9 10:55:34 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:55:34 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:55:34 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:55:34 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:55:34 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:55:34 2026 - your processes number limit is 61306 Fri Jan 9 10:55:34 2026 - your memory page size is 4096 bytes Fri Jan 9 10:55:34 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:55:34 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:55:34 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:55:34 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:55:34 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:55:34 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:39711 (port auto-assigned) fd 4 Fri Jan 9 10:55:34 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:55:34 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:55:34 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:55:34 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:55:34 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:55:34 2026 - Python main interpreter initialized at 0x7f31b8f52d10 Fri Jan 9 10:55:34 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:55:34 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:55:34 2026 - python threads support enabled Fri Jan 9 10:55:34 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:55:34 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:55:34 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:55:34 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:55:34 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:55:34 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:55:34 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x7f31b8f52d10 pid: 1782404 (default app) Fri Jan 9 10:55:34 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:55:34 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:55:34 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:55:34 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:55:34 2026 - spawned uWSGI worker 1 (pid: 1826565, cores: 2) Fri Jan 9 10:55:34 2026 - spawned uWSGI worker 2 (pid: 1826566, cores: 2) Fri Jan 9 10:55:34 2026 - spawned uWSGI http 1 (pid: 1826569) Fri Jan 9 10:55:34 2026 - Python auto-reloader enabled Fri Jan 9 10:56:19 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:56:19 2026 - [uwsgi-python-reloader] module/file /home/v6ole/pyproject/GX-gp-notify/gx_gp_monitor/wechat/message_handler.py has been modified Fri Jan 9 10:56:19 2026 - gateway "uWSGI http 1" has been buried (pid: 1826569) Fri Jan 9 10:56:19 2026 - ...gracefully killing workers... Fri Jan 9 10:56:19 2026 - Gracefully killing worker 2 (pid: 1826566)... Fri Jan 9 10:56:19 2026 - Gracefully killing worker 1 (pid: 1826565)... Fri Jan 9 10:56:20 2026 - worker 1 buried after 1 seconds Fri Jan 9 10:56:20 2026 - worker 2 buried after 1 seconds Fri Jan 9 10:56:20 2026 - binary reloading uWSGI... Fri Jan 9 10:56:20 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:56:20 2026 - closing all non-uwsgi socket fds > 2 (max_fd = 1024)... Fri Jan 9 10:56:20 2026 - found fd 4 mapped to socket 0 (127.0.0.1:39711) Fri Jan 9 10:56:20 2026 - running /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi [uWSGI] getting INI configuration from /home/v6ole/pyproject/GX-gp-notify/uwsgi_wechat.ini Fri Jan 9 10:56:20 2026 - *** Starting uWSGI 2.0.31 (64bit) on [Fri Jan 9 10:56:20 2026] *** Fri Jan 9 10:56:20 2026 - compiled with version: 14.2.0 on 06 January 2026 09:35:56 Fri Jan 9 10:56:20 2026 - os: Linux-6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 Fri Jan 9 10:56:20 2026 - nodename: ubserver Fri Jan 9 10:56:20 2026 - machine: x86_64 Fri Jan 9 10:56:20 2026 - clock source: unix Fri Jan 9 10:56:20 2026 - pcre jit disabled Fri Jan 9 10:56:20 2026 - detected number of CPU cores: 12 Fri Jan 9 10:56:20 2026 - current working directory: /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:56:20 2026 - detected binary path: /home/v6ole/pyproject/GX-gp-notify/venv/bin/uwsgi Fri Jan 9 10:56:20 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:56:20 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:56:20 2026 - chdir() to /home/v6ole/pyproject/GX-gp-notify Fri Jan 9 10:56:20 2026 - your processes number limit is 61306 Fri Jan 9 10:56:20 2026 - your memory page size is 4096 bytes Fri Jan 9 10:56:20 2026 - *** WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers *** Fri Jan 9 10:56:20 2026 - detected max file descriptor number: 1024 Fri Jan 9 10:56:20 2026 - lock engine: pthread robust mutexes Fri Jan 9 10:56:20 2026 - thunder lock: disabled (you can enable it with --thunder-lock) Fri Jan 9 10:56:20 2026 - uWSGI http bound on 0.0.0.0:18001 # 指定 uWSGI 监听的 HTTP 地址和端口 fd 5 Fri Jan 9 10:56:20 2026 - uwsgi socket 0 bound to TCP address 127.0.0.1:43283 (port auto-assigned) fd 3 Fri Jan 9 10:56:20 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:56:20 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:56:20 2026 - Python version: 3.13.11 | packaged by Anaconda, Inc. | (main, Dec 10 2025, 21:39:52) [GCC 14.3.0] Fri Jan 9 10:56:20 2026 - PEP 405 virtualenv detected: /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:56:20 2026 - Set PythonHome to /home/v6ole/pyproject/GX-gp-notify/venv Fri Jan 9 10:56:20 2026 - Python main interpreter initialized at 0x70e078152d10 Fri Jan 9 10:56:20 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:56:20 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:56:20 2026 - python threads support enabled Fri Jan 9 10:56:20 2026 - your server socket listen backlog is limited to 100 connections Fri Jan 9 10:56:20 2026 - your mercy for graceful operations on workers is 60 seconds Fri Jan 9 10:56:20 2026 - mapped 250032 bytes (244 KB) for 4 cores Fri Jan 9 10:56:20 2026 - *** Operational MODE: preforking+threaded *** 2026-01-09 10:56:20 - gx_gp_monitor.wechat.message_handler - INFO - 企业微信消息处理器初始化完成 2026-01-09 10:56:20 - gx_gp_monitor.wechat.callback_server - INFO - 企业微信回调服务器初始化完成 Fri Jan 9 10:56:20 2026 - WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x70e078152d10 pid: 1782404 (default app) Fri Jan 9 10:56:20 2026 - uWSGI running as root, you can use --uid/--gid/--chroot options Fri Jan 9 10:56:20 2026 - *** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** Fri Jan 9 10:56:20 2026 - *** uWSGI is running in multiple interpreter mode *** Fri Jan 9 10:56:20 2026 - gracefully (RE)spawned uWSGI master process (pid: 1782404) Fri Jan 9 10:56:20 2026 - spawned uWSGI worker 1 (pid: 1826904, cores: 2) Fri Jan 9 10:56:20 2026 - spawned uWSGI worker 2 (pid: 1826905, cores: 2) Fri Jan 9 10:56:20 2026 - spawned uWSGI http 1 (pid: 1826908) Fri Jan 9 10:56:20 2026 - Python auto-reloader enabled 2026-01-09 11:02:44 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 11:02:44 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: vfWd53Wgci4LR2cr4AKLqHvpLtiIs8tYOmScdA5SJMkB8UFC+5... 2026-01-09 11:02:44 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: ff509b0226f285b5409b13fed5a910e818fb4ac0 2026-01-09 11:02:44 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: ff509b0226f285b5409b13fed5a910e818fb4ac0 2026-01-09 11:02:44 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 11:02:44 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 11:02:44 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=text 2026-01-09 11:02:44 - gx_gp_monitor.wechat.callback_server - INFO - 处理文本消息: content=大化..., user=WeiJueSen 2026-01-09 11:02:44 - gx_gp_monitor.wechat.message_handler - INFO - 处理文本消息: 大化, user: WeiJueSen 2026-01-09 11:02:44 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 关键词搜索: ['大化'] 2026-01-09 11:02:44 - gx_gp_monitor.main - INFO - === 广西政府采购网公告监控系统启动 === 2026-01-09 11:02:44 - gx_gp_monitor.main - INFO - 版本: 1.0.0 2026-01-09 11:02:44 - gx_gp_monitor.main - INFO - 配置文件: 默认配置 2026-01-09 11:02:44 - gx_gp_monitor.core.reliability - INFO - 健康检查通过 2026-01-09 11:02:44 - gx_gp_monitor.core.database - INFO - 数据库连接池初始化成功 2026-01-09 11:02:44 - gx_gp_monitor.core.database - INFO - 开始初始化数据库表结构 2026-01-09 11:02:44 - gx_gp_monitor.core.database - INFO - 数据库表结构初始化完成 2026-01-09 11:02:44 - gx_gp_monitor.storage.postgresql - INFO - 存储初始化完成 2026-01-09 11:02:44 - gx_gp_monitor.main - INFO - 应用初始化完成 2026-01-09 11:02:44 - gx_gp_monitor.main - INFO - 开始执行搜索任务 (手动搜索: True) 2026-01-09 11:02:44 - gx_gp_monitor.crawler.spider - INFO - 开始爬取 13 个公告来源 2026-01-09 11:02:44 - gx_gp_monitor - INFO - 开始爬取 采购公告 2026-01-09 11:02:49 - gx_gp_monitor.wechat.callback_server - ERROR - ✅ XML解析成功,提取的encrypt长度: 472 2026-01-09 11:02:49 - gx_gp_monitor.wechat.callback_server - ERROR - 提取的encrypt前50字符: vfWd53Wgci4LR2cr4AKLqHvpLtiIs8tYOmScdA5SJMkB8UFC+5... 2026-01-09 11:02:49 - gx_gp_monitor.wechat.callback_server - ERROR - 计算的签名: ff509b0226f285b5409b13fed5a910e818fb4ac0 2026-01-09 11:02:49 - gx_gp_monitor.wechat.callback_server - ERROR - 接收的签名: ff509b0226f285b5409b13fed5a910e818fb4ac0 2026-01-09 11:02:49 - gx_gp_monitor.wechat.callback_server - ERROR - 签名匹配: True 2026-01-09 11:02:49 - gx_gp_monitor.wechat.callback_server - ERROR - 尝试使用默认token计算签名... 2026-01-09 11:02:49 - gx_gp_monitor.wechat.callback_server - INFO - 收到企业微信消息: 类型=text 2026-01-09 11:02:49 - gx_gp_monitor.wechat.callback_server - INFO - 处理文本消息: content=大化..., user=WeiJueSen 2026-01-09 11:02:49 - gx_gp_monitor.wechat.message_handler - INFO - 处理文本消息: 大化, user: WeiJueSen 2026-01-09 11:02:49 - gx_gp_monitor.wechat.message_handler - INFO - 用户 WeiJueSen 关键词搜索: ['大化'] 2026-01-09 11:02:49 - gx_gp_monitor.main - INFO - === 广西政府采购网公告监控系统启动 === 2026-01-09 11:02:49 - gx_gp_monitor.main - INFO - 版本: 1.0.0 2026-01-09 11:02:49 - gx_gp_monitor.main - INFO - 配置文件: 默认配置 2026-01-09 11:02:49 - gx_gp_monitor.core.reliability - INFO - 健康检查通过 2026-01-09 11:02:49 - gx_gp_monitor.core.database - INFO - 数据库连接池初始化成功 2026-01-09 11:02:49 - gx_gp_monitor.core.database - INFO - 开始初始化数据库表结构 2026-01-09 11:02:49 - gx_gp_monitor.core.database - INFO - 数据库表结构初始化完成 2026-01-09 11:02:49 - gx_gp_monitor.storage.postgresql - INFO - 存储初始化完成 2026-01-09 11:02:49 - gx_gp_monitor.main - INFO - 应用初始化完成 2026-01-09 11:02:49 - gx_gp_monitor.main - INFO - 开始执行搜索任务 (手动搜索: True) 2026-01-09 11:02:49 - gx_gp_monitor.crawler.spider - INFO - 开始爬取 13 个公告来源 2026-01-09 11:02:49 - gx_gp_monitor - INFO - 开始爬取 采购公告 2026-01-09 11:02:50 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 11:02:50 - gx_gp_monitor - INFO - 采购公告 爬取完成,共获取 100 条公告,耗时 0.36秒 2026-01-09 11:02:50 - gx_gp_monitor - INFO - 开始爬取 结果公告 2026-01-09 11:02:50 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 11:02:50 - gx_gp_monitor - INFO - 结果公告 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 11:02:50 - gx_gp_monitor - INFO - 开始爬取 合同公告 2026-01-09 11:02:50 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 11:02:50 - gx_gp_monitor - INFO - 合同公告 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 11:02:50 - gx_gp_monitor - INFO - 开始爬取 更正公告 2026-01-09 11:02:50 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 11:02:50 - gx_gp_monitor - INFO - 更正公告 爬取完成,共获取 100 条公告,耗时 0.27秒 2026-01-09 11:02:50 - gx_gp_monitor - INFO - 开始爬取 招标文件预公示 2026-01-09 11:02:51 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 11:02:51 - gx_gp_monitor - INFO - 招标文件预公示 爬取完成,共获取 100 条公告,耗时 0.23秒 2026-01-09 11:02:51 - gx_gp_monitor - INFO - 开始爬取 单一来源公示 2026-01-09 11:02:51 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 11:02:51 - gx_gp_monitor - INFO - 单一来源公示 爬取完成,共获取 100 条公告,耗时 0.20秒 2026-01-09 11:02:51 - gx_gp_monitor - INFO - 开始爬取 电子卖场公示 2026-01-09 11:02:51 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 11:02:51 - gx_gp_monitor - INFO - 电子卖场公示 爬取完成,共获取 100 条公告,耗时 0.34秒 2026-01-09 11:02:51 - gx_gp_monitor - INFO - 开始爬取 履约验收公示 2026-01-09 11:02:51 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 11:02:51 - gx_gp_monitor - INFO - 履约验收公示 爬取完成,共获取 100 条公告,耗时 0.17秒 2026-01-09 11:02:51 - gx_gp_monitor - INFO - 开始爬取 工程类公告 2026-01-09 11:02:52 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 11:02:52 - gx_gp_monitor - INFO - 工程类公告 爬取完成,共获取 100 条公告,耗时 0.25秒 2026-01-09 11:02:52 - gx_gp_monitor - INFO - 开始爬取 框架协议征集公告 2026-01-09 11:02:52 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 11:02:52 - gx_gp_monitor - INFO - 框架协议征集公告 爬取完成,共获取 100 条公告,耗时 0.19秒 2026-01-09 11:02:52 - gx_gp_monitor - INFO - 开始爬取 框架协议入围结果公告 2026-01-09 11:02:52 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 11:02:52 - gx_gp_monitor - INFO - 框架协议入围结果公告 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 11:02:52 - gx_gp_monitor - INFO - 开始爬取 框架协议成交结果汇总公告 2026-01-09 11:02:52 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 11:02:52 - gx_gp_monitor - INFO - 框架协议成交结果汇总公告 爬取完成,共获取 100 条公告,耗时 0.18秒 2026-01-09 11:02:52 - gx_gp_monitor - INFO - 开始爬取 采购意向公开 2026-01-09 11:02:52 - gx_gp_monitor.crawler.parsers - INFO - 成功解析 100/100 条公告记录 2026-01-09 11:02:52 - gx_gp_monitor - INFO - 采购意向公开 爬取完成,共获取 100 条公告,耗时 0.23秒 2026-01-09 11:02:52 - gx_gp_monitor.crawler.spider - INFO - 爬取完成: 共处理 13 个来源,成功 13 个,失败 0 个,获取 1300 条公告 2026-01-09 11:02:52 - gx_gp_monitor.main - INFO - 搜索到 1300 条原始公告 2026-01-09 11:02:52 - gx_gp_monitor.main - INFO - 手动搜索模式:跳过数据库保存 2026-01-09 11:02:52 - gx_gp_monitor.filters.filters - INFO - 日期筛选: 1300 -> 237 条公告 2026-01-09 11:02:52 - gx_gp_monitor.filters.filters - INFO - 关键词筛选: 237 -> 1 条公告 2026-01-09 11:02:52 - gx_gp_monitor.filters.filters - INFO - 来源筛选: 1 -> 1 条公告 2026-01-09 11:02:52 - gx_gp_monitor.main - INFO - 筛选后剩余 1 条公告 2026-01-09 11:02:52 - gx_gp_monitor.main - INFO - 手动爬取模式:跳过筛选后公告的数据库保存 2026-01-09 11:02:52 - gx_gp_monitor.main - INFO - 爬取任务完成: {'success': True, 'total_crawled': 1300, 'filtered': 1, 'saved': 0, 'markdown_generated': False, 'notification_sent': True, 'filter_stats': {'keyword_filtered': 236, 'date_filtered': 1063, 'duplicate_filtered': 0, 'source_filtered': 0}, 'filtered_announcements': [Announcement(id=None, title='大化瑶族自治县2025年度国土变更(日常变更)调查项目合同公告', publish_date=datetime.datetime(2026, 1, 9, 10, 2, 19), purchase_name='大化瑶族自治县自然资源局', content_url='https://zfcg.gxzf.gov.cn/site/detail?parentId=66485&articleId=NSAtgiyTEYUaFq3dcNs6ig==', source_code='ZcyAnnouncement3', source_name='合同公告', announcement_type=, crawled_at=datetime.datetime(2026, 1, 9, 11, 2, 50, 521373), created_at=None, updated_at=None, content_hash='9270849ec53ce195b3fc4de103ef656a', keyword_matched=True, date_filtered=True, is_new=True, is_today=True)]} 2026-01-09 11:02:52 - gx_gp_monitor.notification.wechat - INFO - 企业微信服务初始化完成 2026-01-09 11:02:53 - gx_gp_monitor.notification.wechat - INFO - 成功获取企业微信访问令牌 2026-01-09 11:02:53 - gx_gp_monitor.notification.wechat - INFO - Markdown消息发送成功 {address space usage: 240279552 bytes/229MB} {rss usage: 53104640 bytes/50MB} [pid: 1826904|app: 0|req: 1/1] 106.55.202.215 () {36 vars in 679 bytes} [Fri Jan 9 11:02:49 2026] POST /api/v1/wechat/callback?msg_signature=ff509b0226f285b5409b13fed5a910e818fb4ac0×tamp=1767927764&nonce=1768585088 => generated 626 bytes in 3710 msecs (HTTP/1.1 200) 2 headers in 80 bytes (1 switches on core 0) Fri Jan 9 11:03:14 2026 - *** HARAKIRI ON WORKER 2 (pid: 1826905, try: 1, graceful: yes) *** Fri Jan 9 11:03:14 2026 - HARAKIRI !!! worker 2 status !!! Fri Jan 9 11:03:14 2026 - HARAKIRI [core 0] 183.47.98.168 - POST /api/v1/wechat/callback?msg_signature=ff509b0226f285b5409b13fed5a910e818fb4ac0×tamp=1767927764&nonce=1768585088 since 1767927764 Fri Jan 9 11:03:14 2026 - HARAKIRI !!! end of worker 2 status !!! Fri Jan 9 11:03:14 2026 - HARAKIRI triggered by worker 2 core 0 !!! Fri Jan 9 11:03:15 2026 - DAMN ! worker 2 (pid: 1826905) died, killed by signal 9 :( trying respawn ... Fri Jan 9 11:03:15 2026 - Respawned uWSGI worker 2 (new pid: 1829122)