class Trace::TraceId

A TraceId contains all the information of a given trace id

Attributes

flags[R]
parent_id[R]
sampled[R]
shared[R]
span_id[R]
trace_id[R]

Public Class Methods

new(trace_id, parent_id, span_id, sampled, flags, shared = false) click to toggle source
# File lib/zipkin-tracer/trace.rb, line 108
def initialize(trace_id, parent_id, span_id, sampled, flags, shared = false)
  @trace_id = Trace.trace_id_128bit ? TraceId128Bit.from_value(trace_id) : SpanId.from_value(trace_id)
  @parent_id = parent_id.nil? ? nil : SpanId.from_value(parent_id)
  @span_id = SpanId.from_value(span_id)
  @sampled = sampled
  @flags = flags
  @shared = shared
end

Public Instance Methods

debug?() click to toggle source

the debug flag is used to ensure the trace passes ALL samplers

# File lib/zipkin-tracer/trace.rb, line 122
def debug?
  flags & Flags::DEBUG == Flags::DEBUG
end
next_id() click to toggle source
# File lib/zipkin-tracer/trace.rb, line 117
def next_id
  TraceId.new(trace_id, span_id, ZipkinTracer::TraceGenerator.new.generate_id, sampled, flags)
end
sampled?() click to toggle source
# File lib/zipkin-tracer/trace.rb, line 126
def sampled?
  debug? || %w[1 true].include?(sampled)
end
to_s() click to toggle source
# File lib/zipkin-tracer/trace.rb, line 130
def to_s
  "TraceId(trace_id = #{trace_id}, parent_id = #{parent_id}, span_id = #{span_id}," \
  " sampled = #{sampled}, flags = #{flags}, shared = #{shared})"
end