Dashboard Builder
当任务是构建一个可供运维人员操作的仪表板时使用此技能。
目标不是“展示所有指标”。目标是回答以下问题:
- 系统是否健康?
- 瓶颈在哪里?
- 发生了什么变化?
- 应该采取什么操作?
使用时机
- “构建一个 Kafka 监控仪表板”
- “为 Elasticsearch 创建一个 Grafana 仪表板”
- “为此服务制作一个 SigNoz 仪表板”
- “将这个指标列表转化为一个真正的运维仪表板”
限制条件
- 不要从视觉布局开始;要从运维问题开始
- 不要仅仅因为存在就包含所有可用指标
- 不要在没有结构的情况下混合健康、吞吐量和资源面板
- 不要交付没有标题、单位和合理阈值的面板
工作流程
1. 定义操作问题
围绕以下方面组织:
- 健康 / 可用性
- 延迟 / 性能
- 吞吐量 / 容量
- 饱和度 / 资源
- 服务特定风险
2. 研究目标平台架构
首先检查现有仪表板:
- JSON 结构
- 查询语言
- 变量
- 阈值样式
- 布局分区
3. 构建最小可用面板
推荐结构:
- 概览
- 性能
- 资源
- 服务特定部分
4. 剔除虚荣面板
每个面板都应回答一个真实的问题。如果不能,就移除它。
示例面板集
Elasticsearch
- 集群健康
- 分片分配
- 搜索延迟
- 索引速率
- JVM 堆 / GC
Kafka
- 代理数
- 副本不足的分区
- 消息流入/流出
- 消费者滞后
- 磁盘和网络压力
API 网关 / 入口
- 请求速率
- p50 / p95 / p99 延迟
- 错误率
- 上游健康
- 活跃连接
质量检查清单
- 有效的仪表板 JSON
- 清晰的分组
- 标题和单位已存在
- 阈值/状态颜色有意义
- 存在用于常见过滤器的变量
- 默认时间范围和刷新设置合理
- 没有对操作无价值的虚荣面板
相关技能
research-opsbackend-patternsterminal-ops