Class: Datadog::Annotation::Tracer
- Inherits:
-
Object
- Object
- Datadog::Annotation::Tracer
- Defined in:
- lib/ddtrace/annotation/tracer.rb
Overview
Datadog::Annotation::Tracer is responsible for setting up the trace for the annotated method
Class Method Summary collapse
Class Method Details
.trace(method:, trace_info:, args:, &block) ⇒ Object
44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 |
# File 'lib/ddtrace/annotation/tracer.rb', line 44 def self.trace(method:, trace_info:, args:, &block) resource = resolve_resource!(trace_info[:resource], args) = trace_info[:metadata_proc] Datadog.tracer.trace(resource, service: trace_info[:service]) do |span| result = method.call(*args, &block) ( metadata_proc: , method: method, args: args, result: result, span: span ) result end end |