公众号关注 「奇妙的 Linux 世界」
设为「星标」,每天带你玩转 Linux !
系统的可观察性是系统设计的重要一环。不可观察的系统无法度量、无法监控、无法改进。
日志、追踪和度量是系统可观测性的三大支柱。
下图显示了它们的定义和典型架构。
01 日志记录(Logging)
日志记录系统中的离散事件。例如,我们可以将收到的请求或对数据库的访问记录为事件。它的工作量最大。通常使用 ELK(Elastic-Logstash-Kibana)栈来构建日志分析平台。我们通常会定义一种标准化的日志格式,供不同的团队实施,以便在搜索海量日志时利用关键字。
02 追踪(Tracing)
追踪通常以请求为范围。例如,用户请求会经过 API 网关、负载均衡、服务 A、服务 B 和数据库,这些都可以在追踪系统中可视化。这在我们试图找出系统瓶颈时非常有用。我们使用 OpenTelemetry 展示典型的架构,它将 3 个支柱统一在一个框架中。
03 指标(Metrics)
度量指标通常是系统中可汇总的信息。例如,服务 QPS、API 响应速度、服务延迟等。原始数据记录在 InfluxDB 等时间序列数据库中。Prometheus 根据预定义的警报规则提取数据并转换数据,然后将数据发送到 Grafana 以供显示,或发送到报警管理服务,由其发送电子邮件、短信或 Slack 通知或警报。
本文转载自:「ByteByteGo」,原文:https://url.hi-linux.com/AWPpN,版权归原作者所有。欢迎投稿,投稿邮箱: editor@hi-linux.com。
最近,我们建立了一个技术交流微信群。目前群里已加入了不少行业内的大神,有兴趣的同学可以加入和我们一起交流技术,在 「奇妙的 Linux 世界」 公众号直接回复 「加群」 邀请你入群。
你可能还喜欢
点击下方图片即可阅读
GitHub 星标 1.8K,一款简单、快速、高颜值的终端数据库客户端
点击上方图片,『美团|饿了么』外卖红包天天免费领
更多有趣的互联网新鲜事,关注「奇妙的互联网」视频号全了解!