认识
可观察性是衡量一个系统的内部状态可以从其外部输出的知识中推断出来的程度。在控制理论中,线性系统的可观察性和可控性是数学对偶。可观察性的概念是由匈牙利裔美国工程师 Rudolf E. Kálmán 为线性动力系统引入的。设计用于根据输出测量值估计系统状态的动态系统,称为 State Observer(状态观察器 或 系统的观察器);
可观测性有许多名称,如监测、审计、遥测、仪器。忽略这些细微差别,所有这些词本质上的意思都是一样的:度量您的基础设施、平台和应用程序,以了解它是如何运行的 —— 即通过收集系统指标信息,来了解系统的运行情况。
在软件工程中,可观测性指的是系统的能力,能够提供对其内部状态和行为的深入洞察力。可观测性的重要性在于它可以帮助开发人员和运维团队在系统运行过程中快速识别和解决问题。通过收集和分析系统产生的数据,可以得出有关系统健康状况、性能瓶颈、错误和异常行为等方面的见解。
OBSERVING,Observing,观测
Observability,可观测性
observer
observee (plural observees): One who is observed.
OBSERVABILITY
组成
实现可观测性的关键是使用合适的工具和技术来监控和分析系统。这包括日志记录、指标收集、分布式追踪、错误警报等。通过这些工具和技术,开发人员可以获得对系统性能的实时和历史数据,从而更好地了解系统的行为和瓶颈。
针对可观测性,我们主要关注:聚合度量(Metrics);事件日志(Logging);链路追踪(Tracing);
性质
总的来说,可观测性在软件工程中是非常重要的,它可以提供对系统内部状态和行为的深入洞察力,帮助开发人员和运维团队快速识别和解决问题,从而提高系统的性能、可用性和可靠性。
在运行时,其能够观察、测量、监控软件系统的各个方面,包括性能、可用性、可靠性、安全性等。
可观测性也与开发人员的工作流程和文化有关。团队应该建立一种文化,鼓励开发人员在应用程序的整个生命周期中关注可观测性,并将其视为开发的一个重要方面。这种文化可以促进问题的快速解决和系统的持续改进。
构建
天翼云 | for CT Cloud | 解决方案
参考
什么是可观测性_Spring_java_gg的博客-CSDN博客
Observability – Wikipedia
Peter Bourgon · Metrics, tracing, and logging
聊聊可观测性 – 知乎