Skip to content
🔗 分享本题
查看我的学习进度 →

23 模块 Q13 教学图:Grafana Dashboard 设计:Agent 监控面板关键指标

🧠 图解记忆:面板从业务结果下钻到模型、工具和成本,并让每个异常都能回到具体 Trace;点击图片可查看原图。

💡 答案要点

Agent 监控 Dashboard 设计原则:

传统微服务 Dashboard:CPU / 内存 / QPS / 延迟
Agent Dashboard:任务完成率 / 步数分布 / Token 成本 / 工具调用质量

四象限 Dashboard 布局:

┌────────────────────────────────────────────────────────────────┐
│                   Agent 生产监控 Dashboard                       │
├──────────────────────┬──────────────────────────────────────────┤
│   【业务健康度】      │   【成本分析】                           │
│   任务完成率: 94.2%  │   Token消耗: $1,247/日                   │
│   异常率: 5.8%       │   平均单次成本: $0.023                    │
│   用户满意度: 4.6/5  │   成本趋势: 📈 (+12% vs 上周)            │
├──────────────────────┼──────────────────────────────────────────┤
│   【Agent 行为分析】  │   【系统性能】                           │
│   平均步数: 4.3      │   P50延迟: 1.2s                          │
│   步数分布: [2,3,4,5]│   P99延迟: 4.8s                          │
│   最常用工具: search │   吞吐量: 850 QPS                        │
│   工具失败率: 2.1%   │   GPU利用率: 67%                         │
└──────────────────────┴──────────────────────────────────────────┘

核心 Panel 配置(PromQL):

展开 Yaml 代码示例(37 行)
yaml
# 1. 任务完成率 Panel
- title: 任务完成率
  expr: |
    sum(rate(agent_task_completed_total[5m])) 
    / 
    sum(rate(agent_task_started_total[5m])) * 100
  legend: 完成率 %
  thresholds:
    - value: 90
      color: red
    - value: 95
      color: yellow
    - value: 98
      color: green

# 2. Token 成本趋势 Panel
- title: 日Token消耗趋势
  expr: |
    sum(increase(agent_token_usage_total[1d])) by (model)
  legend: "{{model}}"
  type: area

# 3. 步数分布 Panel(发现异常长轨迹)
- title: 任务步数分布
  expr: |
    histogram_quantile(0.95, 
      sum(rate(agent_steps_per_task_bucket[5m])) by (le)
    )
  legend: P95步数

# 4. 工具调用质量 Panel
- title: 工具调用成功率
  expr: |
    sum(rate(agent_tool_call_success_total[5m])) by (tool_name)
    / 
    sum(rate(agent_tool_call_total[5m])) by (tool_name) * 100
  legend: "{{tool_name}}: {{value}}%"

告警规则(alerting_rules.yaml):

展开 Yaml 代码示例(36 行)
yaml
groups:
  - name: agent_alerts
    rules:
      # 任务完成率低于 85%
      - alert: AgentTaskCompletionRateLow
        expr: |
          sum(rate(agent_task_completed_total[5m])) 
          / sum(rate(agent_task_started_total[5m])) < 0.85
        for: 5m
        labels:
          severity: critical
        annotations:
          summary: "Agent任务完成率过低"
          description: "当前完成率 {{ $value | humanizePercentage }},持续5分钟"

      # Token消耗超阈值(日预算$2000,超$1800告警)
      - alert: AgentCostBudgetExceeded
        expr: |
          sum(increase(agent_token_usage_total[1h])) * 24 > 1800
        for: 10m
        labels:
          severity: warning
        annotations:
          summary: "Agent日成本可能超预算"
          description: "预计日成本 ${{ $value }},超过$1800阈值"

      # 异常长轨迹(步数>10)
      - alert: AgentTrajectoryTooLong
        expr: |
          sum(rate(agent_steps_over_threshold_total[5m])) > 3
        for: 5m
        labels:
          severity: warning
        annotations:
          summary: "Agent异常长轨迹增多"
          description: "5分钟内发现 {{ $value }} 个超长轨迹(>10步)"

面试话术:

"Agent Dashboard 可同时展示业务结果、质量/安全、轨迹行为、成本和系统性能,并按租户、任务、模型与版本切片。步数上升只是异常信号,可能来自检索、工具超时、模型行为或任务结构变化,必须下钻 trace;告警阈值用基线和 SLO 校准。"