-
组件闭环的信息
-
组件间或系统间流动的信息
第一种形态通常可通过 logs 或 metrics 表征,第二种形态就需要 trace 表征,在流动的信息中增加标记。
对于 logs 和 metrics 的区别,可通过它们的操作方法进行理解。
再进一步抽象,可观测性涉及到如下问题:
-
观测数据的数据模型
-
观测数据的采集
-
观测数据的处理
-
观测数据的导出
-
观测数据的使用
-
etc.
上述即是 OpenTelemetry 面对的问题域及具体的问题,且将具体的问题限定在:
-
观测数据的数据模型
-
观测数据的采集
-
观测数据的处理
-
观测数据的导出
[](()OpenTelemetry 的解决方案是什么?
OpenTelemetry 通过 Spec 规范了观测数据的数据模型以及采集、处理、导出方法,包括 trace、metrics、logs (未来不排除会有新的类型),参见 [opentelemetry-specification](()。
同时为了方便使用,通过 protobuf 来描述,参见[opentelemetry-proto](()。
基于 Spec,OpenTelemetry 面向观测数据的生成和处理,做了如下的努力:
-
为了方便开发者使用,提供了语言相关的 SDK,如 [opentelemetry-go](()、[op