一、这篇是在前几篇监控 性能文章基础上的「整合版」到目前为止你这个系列已经有了几篇很实用的文章技术监控周报CPU、内存、错误率整体情况API 性能分析周报接口调用量、P95/P99 延迟、错误率分布MySQL 性能分析周报CPU、慢查询、锁等待等核心指标。这些文章各自都是一个“点”的实战 Demo但真正写周报 / 做汇报时领导或者团队其实更想看到的是一份统一视角的性能周报系统资源层CPU/内存/磁盘接口/API 层流量 延迟 错误数据库层慢查询 锁竞争 连接数三者之间的关联和归因比如「周五晚 8 点 QPS 上了高峰同时 CPU/慢查询/错误率都有抬头」「本周性能问题的根因主要集中在订单写入链路的几条接口 对应的几条 SQL」这篇文章要做的就是把你前面已经写好的那几块“单点分析能力”用本地 Qwen3.5 串起来自动生成一份统一的‘系统 API DB’综合性能周报段落。二、整体架构三个分析器 一个总控大脑可以把这个综合性能周报助手拆成四部分系统监控分析器输入一周的系统指标CPU、内存、磁盘、错误率、告警输出一段「本周系统监控核心分析」API 性能分析器你上一篇已经实现输入一周 API 调用数据调用量、P95、错误率输出一段「本周 API 性能核心分析」MySQL 性能分析器你刚刚这篇已经实现输入一周 MySQL 性能数据慢查询、锁、连接数、CPU 等输出一段「本周数据库性能核心分析」综合分析大脑本篇的重点输入上面三段「Markdown 文本 关键统计摘要」输出一段统一视角的「端到端性能综合分析」包括整体健康度评价关键风险点归因系统 / API / DB下周性能工作重点简单理解为前三篇是“分科报告”这篇是“总检报告”。三、环境前提基于你现有的三套分析脚本假设你已经有了三份脚本名字可以按你自己前面的命名来下面以示例为主monitor_analyzer.py暴露函数generate_monitor_report() - str返回系统监控分析的 Markdown 字符串api_performance_analyzer.py暴露函数generate_api_report() - str返回API 性能分析的 Markdown 字符串mysql_performance_analyzer.py暴露函数generate_mysql_report() - str返回MySQL 性能分析的 Markdown 字符串并且你已经在本机配置好ollama pull qwen3.5:7b-instruct-q4_0 python -m venv perf_env # Windows: # perf_env\Scripts\activate # macOS / Linux: source perf_env/bin/activate pip install --upgrade pip pip install ollama0.1.1四、写一个「综合性能分析器」把三块内容喂给 Qwen3.5在你的项目根目录中新建一个脚本比如overall_performance_summarizer.py#!/usr/bin/env python3 # -*- coding: utf-8 -*- 整体性能周报综合分析器 功能 1. 调用已有的系统监控 / API / MySQL 三个分析器获取三段 Markdown 文本 2. 将三段分析结果作为上下文交给本地 Qwen3.5 做更高层次的综合归纳 3. 输出一段统一视角的「本周整体性能与稳定性分析」可直接插入周报 from pathlib import Path import datetime import ollama # 按你自己前几篇脚本的实际名称来 import from monitor_analyzer import generate_monitor_report from api_performance_analyzer import generate_api_report from mysql_performance_analyzer import generate_mysql_report MODEL_NAME qwen3.5:7b-instruct-q4_0 OUTPUT_DIR Path(overall_reports) def build_overall_prompt( monitor_md: str, api_md: str, db_md: str, start_date: str, end_date: str, ) - str: 构造给 Qwen3.5 的综合分析提示词 prompt f 你现在是一名资深技术负责人Tech Lead需要根据本周的系统监控、API 性能和数据库性能三份分析报告写一段可以直接放进技术周报开头部分的【本周整体性能与稳定性分析】。 时间范围{start_date} ~ {end_date} 以下是三份子报告的内容Markdown 形式 【系统监控分析】 -------------------- {monitor_md} -------------------- 【API 性能分析】 -------------------- {api_md} -------------------- 【数据库性能分析】 -------------------- {db_md} -------------------- 请基于以上三份报告输出一段更高层次的综合分析要求 1. 输出格式为 Markdown结构建议如下可以略微调整 ### 本周整体性能与稳定性分析 1. **整体健康度评价** - 用 23 句话给出本周整体系统的健康度结论例如整体稳定 / 有轻微波动 / 存在明显风险并简单说明依据从系统、API、数据库三个层面各引用一两点关键结论。 2. **主要风险点与可能根因** - 综合三份报告归纳本周最值得关注的 24 个性能 / 稳定性风险点 - 对每个风险点说明它发生在哪一层系统 / API / DB / 组合对业务有什么潜在影响例如接口超时、下单失败、峰值时段体验变差等以及可能的根因方向例如某些高峰时段 CPU 某几条慢 SQL 某几条慢接口同时抬头。 3. **本周改进进展与效果评估**如报告中有提及 - 如果子报告中提到本周已有的优化措施例如压测、限流、索引优化请简要评价其效果 - 如未提及可写“本周暂无较大规模的性能优化动作以常规巡检为主”。 4. **下周性能工作重点建议** - 根据上述风险点和分析结果给出 36 条下周在性能与稳定性方面的工作重点建议 - 建议尽量具体到“接口 / 场景 / 指标”例如“针对 /api/order/create 做一次慢查询专项优化”“在晚间 20~22 点压测网关和数据库链路”等。 2. 语言要求 - 使用简体中文语气偏「技术负责人对内团队汇报」风格专业但不过度堆砌术语 - 注意区分事实已发生的数据与现象和推断可能的原因推断部分请用“可能 / 推测 / 需要进一步验证”等词语表述。 3. 不要重复完整粘贴子报告内容重点是「提炼 归纳 关联」。 4. 控制整体长度在 300500 字之间保证条理清晰、信息密度高。 请开始输出综合分析内容 return prompt.strip() def call_qwen(prompt: str) - str: 调用本地 Qwen3.5 生成综合分析文本 res ollama.chat( modelMODEL_NAME, messages[{role: user, content: prompt}], temperature0.3, ) return res[message][content].strip() def generate_overall_report() - str: 对外暴露的主函数 - 先拿到三段子报告 - 再生成一段整体性能与稳定性分析 # 按“上周一 ~ 上周日”为统计区间和前面几篇保持一致 today datetime.date.today() start_date today - datetime.timedelta(daystoday.weekday() 7) end_date start_date datetime.timedelta(days6) print( 1. 生成系统监控分析...) monitor_md generate_monitor_report() print(\n 2. 生成 API 性能分析...) api_md generate_api_report() print(\n 3. 生成数据库性能分析...) db_md generate_mysql_report() print(\n 4. 生成整体性能与稳定性综合分析...) prompt build_overall_prompt( monitor_mdmonitor_md, api_mdapi_md, db_mddb_md, start_datestr(start_date), end_datestr(end_date), ) overall_md call_qwen(prompt) OUTPUT_DIR.mkdir(exist_okTrue) out_path OUTPUT_DIR / foverall_performance_{start_date}_to_{end_date}.md out_path.write_text(overall_md, encodingutf-8-sig) print(f\n综合性能分析报告已保存到{out_path}) return overall_md if __name__ __main__: summary generate_overall_report() print(\n 综合性能分析内容预览 \n) print(summary)这个脚本的核心点在于不需要你重新写任何监控逻辑直接复用之前已经写过的三个分析函数再让 Qwen3.5 对“三段现有分析结果”做一次更高层次的归纳。五、把这段「综合分析」当成周报的“开头部分”你现在已经有了monitor_md系统监控分析api_mdAPI 性能分析db_mdMySQL 性能分析overall_md整合这三者的「整体性能与稳定性分析」你可以把整个技术周报的结构调整为# 本周技术工作周报{start_date} ~ {end_date} ## 一、本周整体性能与稳定性分析 {overall_md} ## 二、本周系统监控核心分析 {monitor_md} ## 三、本周 API 性能核心分析 {api_md} ## 四、本周数据库性能核心分析 {db_md} ## 五、本周具体工作内容 {work_md} !-- 原来你写的需求/开发/联调等内容 -- ## 六、本周问题与风险 {risk_md} ## 七、下周工作计划 {plan_md}从领导或团队视角看这样有几个优点先给结论再看细节一上来就看到“整体健康度 风险点 下周重点”非常符合管理者的阅读习惯中间三块是“证据”系统、API、DB 三层分析各自独立、互相印证后面的工作内容和计划与上面的风险和分析对齐周报显得非常有逻辑、有闭环。六、让这整套东西真正“自动化”起来目前为止你已经有三份数据分析器系统 / API / DB有一个综合性能分析器再加上你早前的「日报/周报自动生成」脚本。接下来你只需要加一层“调度”定时任务crontab / Windows 任务计划每周一早上 8:00自动执行拉取上周监控数据可由其他脚本提前完成运行 4 个分析脚本monitor_analyzer.pyapi_performance_analyzer.pymysql_performance_analyzer.pyoverall_performance_summarizer.py运行“工作内容周报生成脚本”基于 daily logs输出统一存档把所有生成的 Markdown 文件统一保存到weekly_reports/2026-03-02_to_2026-03-08/overall_performance.mdmonitor_analysis.mdapi_performance.mdmysql_performance.mdwork_summary.mdfinal_weekly_report.md人工只做最后 5 分钟打开final_weekly_report.md检查结论是否准确如有偏差例如 AI 对某些风险推断过头简单修正两三句话复制到公司内部周报系统/飞书文档/邮箱即可。 所有脚本与流程均在本地环境实际测试后整理请结合自己公司的监控体系和字段进行调整。 你现在在性能这块最想先自动化的是哪一层系统监控、API、数据库还是“整体汇总报告”欢迎在评论区说一下你的实际场景我可以按你的数据结构帮你改一版更贴合的综合分析提示词。