类:Mongo::Tracing::OpenTelemetry::OperationTracer Private
- 继承:
-
对象
- 对象
- Mongo::Tracing::OpenTelemetry::OperationTracer
- 扩展方式:
- 可转发
- 定义于:
- lib/ Mongo/tracing/open_telemetry/operation_tracer.rb
Overview
此类是私有 API 的一部分。 应尽可能避免使用此类,因为它将来可能会被删除或更改。
OperationTracer 负责使用 OpenTelemetry 跟踪MongoDB驱动程序操作。
实例方法摘要折叠
-
#initialize (otel_tracer,parent_tracer) ="OperationTracer"
构造函数
private
初始化新的 OperationTracer。
-
#trace_operation(操作, operation_context, op_name: nil) { ... } ⇒ 对象
private
跟踪MongoDB操作。
构造函数详情
#initialize (otel_tracer, parent_tracer) ⇒ OperationTracer
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
初始化新的 OperationTracer。
37 38 39 40 |
# 文件 'lib/mongo/tracing/open_telemetry/operation_tracer.rb', line 37 def 初始化(otel_tracer, parent_tracer) @otel_tracer = otel_tracer @parent_tracer = parent_tracer end |
实例方法详细信息
#trace_operation (operation, operation_context, op_name: nil) {... } ⇒ 对象
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
跟踪MongoDB操作。
为操作创建 OpenTelemetry 范围,捕获数据库名称、集合名称、操作名称和游标ID等属性。当操作完成或失败时,跨度会自动完成。
rubocop:disable Lint/RescueException
58 59 60 61 62 63 64 65 66 |
# 文件 'lib/mongo/tracing/open_telemetry/operation_tracer.rb', line 58 def trace_operation(操作, operation_context, op_name: nil, 和块) span = create_operation_span(操作, operation_context, op_name) execute_with_span(span, 操作, 和块) 救援 例外 => e handle_span_Exception(span, e) 提高 e 确保 span&。完成 end |