2023-07-03 09:02:51
监控系统的“三剑客”——Metrics(指标)、Logging(日志)、Tracing(链路追踪),是构建可观测性的三大核心维度,三者相辅相成,共同支撑起高效的监控与故障排查体系。

典型指标:CPU占用率、内存使用量、接口响应时间(P99/P95)、QPS(每秒查询数)、服务GC次数、订单量等。
存储形式:通常存储在TSDB(时间序列数据库)中,如Prometheus、InfluxDB。
指标类型(以Prometheus为例):
Counter:单调递增的计数器(如请求总数)。
Gauge:瞬时值(如当前内存占用)。
Histogram/Summary:分布统计(如请求延迟的百分位)。

典型内容:错误堆栈、请求入参/出参、业务关键事件(如订单创建)。
存储形式:通常以文件形式存储,通过日志系统(如ELK、Graylog)集中管理。
关键配置:日志滚动策略(按时间/大小分割)、日志模板(结构化日志)。

典型场景:微服务架构中,追踪一个请求如何从网关流向服务A、服务B,最终到达数据库。
主流体系:
OpenTracing:如Jaeger、Zipkin,基于Google Dapper论文。
侵入式埋点:如点评的CAT,需修改代码插入追踪点。

定位慢请求(如某个服务调用耗时过长)。
排查异常传播路径(如错误如何从服务A传递到服务B)。

总结:Metrics提供宏观视角,Logging补充细节,Tracing梳理关系。三者结合,才能构建起“既见森林,又见树木”的可观测性体系。