可观测性工程
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.1 可观测性的数学定义

“可观测性”一词是由工程师鲁道夫·E.卡尔曼(Rudolf E. Kálmán)在1960年创造的。从那以后,它便在不同的领域有了不同的含义。在讲述现代软件系统的可观测性定义之前,让我们先了解一下广义的可观测性。

在1960年的论文中,卡尔曼引入了一个他称为“可观测性”的特征来描述数学下的控制系统[1]。在控制论中,可观测性被定义为一种度量:可以根据系统的外部输出信息推断出系统内部状态的好坏。

可观测性的这个定义将把可观测性和可控制性作为数学对偶来研究,通常关联着传感器、线性代数方程组和形式化方法。当机械工程师研究现实世界的物理系统时,可观测性的这种传统定义会很自然地出现在他们的脑海里。

如果你正在寻找数学和机械工程方面的教科书,那么这本书不适合你。这些书肯定是存在的,并且任何机械工程师或控制系统工程师都会(通常是热情而详尽地)告诉你,在传统的系统工程师术语中,可观测性有一个正式的含义。然而,当同样的概念适用于更复杂的虚拟软件系统时,它开启了一种完全不同的理解你所编写的代码并与之交互的新方式。