Skip to content

可观测性

可观测性是系统运维的核心能力,通过 Metrics(指标)、Logging(日志)、Tracing(链路追踪)了解系统内部状态。

可观测性三大支柱

Metrics(指标)

指标是数值型的测量值,反映系统的某个方面。指标类型:Counter(计数器)、Gauge(仪表盘)、Histogram(直方图)、Summary(摘要)。

指标示例:QPS、延迟(P50、P95、P99)、错误率、CPU 使用率。

Logging(日志)

日志是离散的事件记录,包含时间戳、级别、消息、上下文。日志级别:DEBUG、INFO、WARN、ERROR、FATAL。

结构化日志(JSON)方便机器解析,文本日志方便人类阅读。

Tracing(链路追踪)

链路追踪是请求在分布式系统中的路径,包含多个 Span(跨度)。链路追踪适合分析跨服务的调用链。

监控系统

Prometheus

Prometheus 是开源的监控系统,使用 Pull 模式采集指标。PromQL 是查询语言,支持聚合、过滤、计算。

Grafana

Grafana 是开源的可视化平台,支持多种数据源(Prometheus、Elasticsearch)。

日志系统

ELK Stack

Elasticsearch(存储和搜索)、Logstash(收集和转换)、Kibana(可视化)。

Loki

Loki 是 Grafana Labs 开发的日志系统,设计类似 Prometheus,不索引日志内容。

链路追踪

OpenTelemetry

OpenTelemetry 是可观测性的开放标准,整合了 Metrics、Logging、Tracing。

Jaeger

Jaeger 是 Uber 开源的链迹追踪系统,兼容 OpenTelemetry。

告警系统

告警规则

告警规则定义何时触发告警。Prometheus 告警规则:rate(http_requests_total[5m]) > 100。

告警路由

Alertmanager 路由告警到不同的接收者(邮箱、钉钉、企业微信)。

告警收敛

时间收敛、空间收敛、因果收敛。