作业14 · 告警规则草稿(先 Markdown,再落到监控系统)
环境锚点:Langfuse http://192.168.110.207:3000;后续可落到 Prometheus/Alertmanager 或值班机器人。
字段规范见主文档:trace_id, session_id, model, prompt_tokens, completion_tokens, tool_name, latency_ms, error_type(另用 app_name 做应用维度)。
规则 1:单应用日 Token 突增
| 项 | 内容 |
|---|
| 名称 | llm_app_daily_tokens_spike |
| 条件 | 某 app_name 当日 sum(prompt_tokens+completion_tokens) ≥ 昨日同应用的 3 倍,且绝对值 ≥ 50,000 |
| 窗口 | 自然日(Asia/Shanghai 00:00–24:00) |
| 级别 | P2(成本) |
| 通知 | 运维群 + 应用负责人 |
| 建议动作 | 查 Top Trace;是否批跑/死循环工具调用;临时降 max_tokens 或关该应用 |
| 落地候选 | 每日跑 hw14_02 对比两日 CSV;或 Langfuse 度量 + 外部 Cron |
规则 2:错误率升高(error_type 非空)
| 项 | 内容 |
|---|
| 名称 | llm_error_rate_high |
| 条件 | 5 分钟窗口内,带 error_type 的 Trace 占比 ≥ 5%,且样本量 ≥ 20 |
| 分组 | 按 app_name、model |
| 级别 | P1(可用性)若占比 ≥ 20%;否则 P2 |
| 通知 | 值班 Oncall |
| 建议动作 | 对照作业13 Runbook(429/5xx/超时);切 backup;查 LiteLLM/vLLM |
| 落地候选 | 从 Langfuse API/导出统计;或在网关侧用 Prometheus 计数 llm_requests_error_total |
规则 3:延迟恶化(latency_ms)
| 项 | 内容 |
|---|
| 名称 | llm_latency_p95_high |
| 条件 | 15 分钟窗口,latency_ms 的 P95 ≥ 15,000ms(15s),且请求数 ≥ 30 |
| 分组 | model(可再按 app_name) |
| 级别 | P2;若 P95 ≥ 60s 升 P1 |
| 通知 | 值班 + 平台负责人 |
| 建议动作 | 降并发(作业13 安全并发);查 GPU 排队;核对超时链 |
| 落地候选 | Prometheus histogram(若已埋点)或周期导出算分位数 |
落地顺序(建议)
- 本周:用导出 +
hw14_02 人工看日报(规则1)。 - 下周:Cron 每日 09:00 跑脚本,结果贴群。
- 再往后:把规则2/3 的计数指标接到 Prometheus/Alertmanager 或企业值班系统。
告警文案模板
text
【LLM告警】规则={name} 级别={P1/P2}
时间={ts} 应用={app_name} 模型={model}
指标={value} 阈值={threshold}
已做/建议:{action}
看板:http://192.168.110.207:3000