--- title: "Observability" type: concept tags: [DevOps, Monitoring, Reliability] sources: [engineering-devops-automator] last_updated: 2026-05-01 --- # Observability ## 定义 可观测性(Observability)是通过收集系统外部输出来推断其内部状态的能力,核心目标是回答"为什么系统出现了问题",而不仅仅是"系统是否正常"。 ## 可观测性三支柱 ### 1. 指标(Metrics) - **定义**:数值型测量,反映系统健康状况 - **特点**:聚合性强、支持告警、存储成本相对低 - **工具**:[[Prometheus]]、CloudWatch、DataDog - **示例**:CPU 使用率、请求延迟、错误率、QPS ### 2. 日志(Logs) - **定义**:系统产生的离散事件记录 - **特点**:详细信息、时序排列、关联分析 - **工具**:ELK Stack(Loki)、CloudWatch Logs - **示例**:访问日志、错误日志、审计日志 ### 3. 追踪(Traces) - **定义**:请求在分布式系统中的完整调用路径 - **特点**:端到端关联、延迟分析、瓶颈定位 - **工具**:Jaeger、Zipkin、AWS X-Ray - **示例**:微服务调用链、数据库查询耗时 ## SRE 可观测性实践 ### RED 方法(面向服务) - **Rate**:请求率(每秒请求数) - **Errors**:错误率(失败请求百分比) - **Duration**:延迟(响应时间分布) ### USE 方法(面向资源) - **Utilization**:利用率 - **Saturation**:饱和度 - **Errors**:错误 ## 在 DevOps Automator 中的应用 DevOps Automator 的可观测性体系: 1. **指标收集**:Prometheus scrape metrics 2. **可视化**:Grafana Dashboard 3. **告警**:Prometheus Alert Rules → AlertManager 4. **日志聚合**:可选 Loki/ELK 5. **分布式追踪**:可选 Jaeger ### 关键监控指标 - 部署频率(Deployment Frequency) - 变更失败率(Change Failure Rate) - MTTR(Mean Time To Recovery) - 可用性(Availability) ## 相关概念 - [[Prometheus]]:指标采集和告警核心组件 - [[Grafana]]:指标可视化平台 - [[Zero-Downtime Deployment]]:可观测性支撑零停机部署的监控需求 ## 相关工具 | 类型 | 工具 | |------|------| | 指标 | Prometheus, CloudWatch, DataDog, New Relic | | 日志 | ELK Stack, Loki, CloudWatch Logs | | 追踪 | Jaeger, Zipkin, AWS X-Ray, OpenTelemetry | | 可视化 | Grafana, Datadog Dashboards | ## SRE 四个黄金信号 Google SRE 提出的关键指标: 1. **Latency**:延迟 2. **Traffic**:流量 3. **Errors**:错误 4. **Saturation**:饱和度 ## Aliases - 可观测性 - Observability - Monitoring - 监控 - 可观测系统工程