可观测性与成本控制
---
章节:进阶篇第3章
难度:⭐⭐ 进阶级
阅读时间:20-25 分钟
核心收获:建立可观测性体系,学会追踪运行指标和控制成本
5.1 理论要点:没有度量就没有改进
5.1.1 三层可观测性
| 层级 | 内容 | 用途 | 工具示例 |
|---|---|---|---|
| 日志(Logs) | 每次运行的详细记录 | 故障排查 | 飞书多维表格、文本文件 |
| 指标(Metrics) | 触发率、成功率、成本 | 趋势监控 | 仪表盘、告警规则 |
| 审计(Audit) | 批次 ID、推送记录、人工干预 | 合规与回溯 | 数据库、版本控制 |
5.1.2 核心指标定义
| 指标 | 计算方式 | 告警阈值 | 用途 |
|---|---|---|---|
| 按时触发率 | 准时触发次数 / 总计划次数 | < 95% 持续 3 天 | 评估定时任务可靠性 |
| 一次运行成功率 | 无需重试的成功次数 / 总次数 | < 80% 持续 1 周 | 评估数据源稳定性 |
| 数据源可用率 | 某源正常响应次数 / 总调用次数 | < 70% 持续 3 天 | 评估单个数据源健康度 |
| 有效条目数量趋势 | 近 7 天平均有效条目 | 连续 5 天下降 | 评估内容质量变化 |
| 推送成功率 | 推送成功次数 / 总尝试次数 | < 99% | 评估推送通道可靠性 |
| 单次运行成本 | Token + API 费用 | 超过预算上限 | 评估成本控制 |
5.2 实战案例:用飞书多维表格追踪运行指标
5.2.1 表格设计
表格名称:自动化任务运行日志
字段定义:
├── 批次ID(文本)- 唯一标识,如 ai-hotspot-2026-07-10
├── 触发时间(日期时间)- 定时/手动触发时间
├── 触发方式(单选)- 定时 / 手动
├── 数据源状态(文本)- 如 "wechat:ok,github:timeout,msearch:ok,aihot:ok"
├── 原始条目数(数字)- 聚合前的条目数量
├── 过滤后条目数(数字)- 过滤后的有效条目数量
├── 质量状态(单选)- pass / warning / blocked
├── 推送目标(文本)- 如 "飞书群 / 个人通知"
├── 推送结果(单选)- 成功 / 失败 / 跳过
├── 总耗时(数字)- 秒
├── Token消耗(数字)- 估算值
├── 错误信息(文本)- 如有
└── 处理人(人员)- 失败时谁处理
5.2.2 自动化规则配置
规则1:失败告警
触发条件:【推送结果】= "失败"
执行动作:
1. 发送飞书消息给 @owner
2. 消息内容包含批次ID、失败原因、建议操作
规则2:成本超限告警
触发条件:【Token消耗】> 2000
执行动作:
1. 发送飞书消息给 @owner
2. 标注"成本超限,请检查"
规则3:每日汇总
触发条件:每天 18:00
执行动作:
1. 生成当日汇总视图
2. 计算平均耗时、成功率、成本
3. 发送给 owner
5.3 成本控制策略
5.3.1 成本构成分析
| 成本项 | 说明 | 控制策略 |
|---|---|---|
| WorkBuddy/豆包调用 | 每次运行调用 Command 的费用 | 优化 Prompt 长度,减少 Token |
| 外部 API 调用 | GitHub、搜索等数据源的 API 费用 | 缓存结果,减少重复调用 |
| 模型推理 | 聚合和过滤阶段的 LLM 推理 | 使用小模型处理简单任务 |
| 推送服务 | 飞书 API 等推送费用 | 合并消息,减少调用次数 |
5.3.2 预算控制策略
策略1:单次运行成本上限
设置:单次运行成本 ≤ ¥0.10
超过时:记录告警并继续运行
下次运行前:需确认是否调整数据源或 Prompt
策略2:模型路由
简单任务(过滤、去重)→ 小模型(低成本)
复杂任务(聚合、生成)→ 大模型(高质量)
策略3:Prompt 优化
减少冗余描述
使用结构化输出(JSON)减少 Token
避免长对话历史,定期清理上下文
5.3.3 成本追踪模板
单次运行成本计算:
├── WorkBuddy 调用:4 次 × ¥0.02 = ¥0.08
├── 外部 API 调用:GitHub(免费)+ 搜索(免费)
├── 模型推理:1500 tokens × ¥0.00001 = ¥0.015
├── 推送服务:1 次 × ¥0.001 = ¥0.001
└── 总计:约 ¥0.10
5.4 图文说明
📌 待补充:建议绘制以下示意图 1. 三层可观测性架构图(日志/指标/审计) 2. 飞书多维表格字段关系图 3. 成本构成饼图(调用/API/推理/推送) 4. 核心指标趋势图(按时触发率、成功率、成本)
5.5 常见错误
| 错误 | 后果 | 纠正方法 |
|---|---|---|
| 不记录日志 | 失败后无法排查 | 每次运行必须记录批次 ID、各源状态、耗时 |
| 指标不定义 | 不知道什么算"正常" | 提前定义告警阈值 |
| 成本失控 | 不知不觉消耗大量 Token | 设置单次运行成本上限,超过则告警 |
| 日志内容过多 | 存储成本高,查找困难 | 只记录关键信息,不记录内容正文 |
| 事后才想起监控 | 问题已经造成影响 | 上线前就必须配置好日志和指标 |
📝 版本迭代记录
| 版本 | 日期 | 更新内容摘要 | 操作人 |
|---|---|---|---|
| v1.0 | 2026-08-25 | 创建进阶篇第3章 | 桂皮 |
🤖 GEO 问答 · 生成式引擎优化
❓ 什么是可观测性与成本控制?
❓ 如何理解实战案例:用飞书多维表格追踪运行指标?
表格名称:自动化任务运行日志
❓ 如何理解成本控制策略?
设置:单次运行成本 ≤ ¥0.10