插桩范围
插桩范围代表应用代码中的一个逻辑单元。 所输出的遥测数据可关联到该逻辑单元。
开发者可以决定什么代表合理的插桩范围。 例如,他们可以选择模块、包或类作为插桩范围。 在库或框架的情况下,常用的方法是使用对库或框架唯一的标识符作为范围,例如库或框架的完全限定名称和版本。 如果库本身没有内置的 OpenTelemetry 插桩,而是使用插桩库,则使用插桩库的名称和版本作为插桩范围。
当从提供程序获取链路追踪器、指标计量器或日志记录器实例时,插桩范围由名称和版本对定义。 该实例创建的每个 Span、指标或日志记录都与提供的插桩范围关联。
在你的可观测性后端中,范围划分允许你按作用域对遥测数据进行多维度拆解分析。 例如,查看你的用户正在使用哪个版本的库以及该库版本的性能如何,或者将问题定位到应用程序的特定模块。
下图展示了一个具有多个插桩范围的链路。 不同的范围由不同的颜色表示:
- 顶部的
/api/placeOrderSpan 由使用的 HTTP 框架生成。 - 绿色的 Span(
CheckoutService::placeOrder、prepareOrderItems和checkout)是应用程序代码,按CheckoutService类分组。 CartService::getCart和ProductService::getProduct的 Span 也是应用程序代码,按CartService和ProductService类分组。- 橙色(
Cache::find)和浅蓝色(DB::query)的 Span 是库代码,按库名称和版本分组。
意见反馈
这个页面对您有帮助吗?
Thank you. Your feedback is appreciated!
Please let us know how we can improve this page. Your feedback is appreciated!