lib/opentelemetry/trace.rb in opentelemetry-api-1.0.2 vs lib/opentelemetry/trace.rb in opentelemetry-api-1.1.0

- old
+ new

@@ -11,22 +11,12 @@ module Trace extend self CURRENT_SPAN_KEY = Context.create_key('current-span') - # Random number generator for generating IDs. This is an object that can - # respond to `#bytes` and uses the system PRNG. The current logic is - # compatible with Ruby 2.5 (which does not implement the `Random.bytes` - # class method) and with Ruby 3.0+ (which deprecates `Random::DEFAULT`). - # When we drop support for Ruby 2.5, this can simply be replaced with - # the class `Random`. - # - # @return [#bytes] - RANDOM = Random.respond_to?(:bytes) ? Random : Random::DEFAULT + private_constant :CURRENT_SPAN_KEY - private_constant :CURRENT_SPAN_KEY, :RANDOM - # An invalid trace identifier, a 16-byte string with all zero bytes. INVALID_TRACE_ID = ("\0" * 16).b # An invalid span identifier, an 8-byte string with all zero bytes. INVALID_SPAN_ID = ("\0" * 8).b @@ -35,21 +25,21 @@ # non-zero byte. # # @return [String] a valid trace ID. def generate_trace_id loop do - id = RANDOM.bytes(16) + id = Random.bytes(16) return id unless id == INVALID_TRACE_ID end end # Generates a valid span identifier, an 8-byte string with at least one # non-zero byte. # # @return [String] a valid span ID. def generate_span_id loop do - id = RANDOM.bytes(8) + id = Random.bytes(8) return id unless id == INVALID_SPAN_ID end end # Returns the current span from the current or provided context