Bootstrap

OpenTelemetry 简析

  • 组件闭环的信息

  • 组件间或系统间流动的信息

第一种形态通常可通过 logs 或 metrics 表征,第二种形态就需要 trace 表征,在流动的信息中增加标记。

对于 logs 和 metrics 的区别,可通过它们的操作方法进行理解。

再进一步抽象,可观测性涉及到如下问题:

  • 观测数据的数据模型

  • 观测数据的采集

  • 观测数据的处理

  • 观测数据的导出

  • 观测数据的使用

  • etc.

上述即是 OpenTelemetry 面对的问题域及具体的问题,且将具体的问题限定在:

  • 观测数据的数据模型

  • 观测数据的采集

  • 观测数据的处理

  • 观测数据的导出

[](()OpenTelemetry 的解决方案是什么?


OpenTelemetry 通过 Spec 规范了观测数据的数据模型以及采集、处理、导出方法,包括 trace、metrics、logs (未来不排除会有新的类型),参见 [opentelemetry-specification](()。

同时为了方便使用,通过 protobuf 来描述,参见[opentelemetry-proto](()。

基于 Spec,OpenTelemetry 面向观测数据的生成和处理,做了如下的努力:

  • 为了方便开发者使用,提供了语言相关的 SDK,如 [opentelemetry-go](()、[op

;