Sha256: 4b06bffd2b33d216ee24fc651a89550ea17cd4231691f094955dc76d5d165c43
Contents?: true
Size: 1.73 KB
Versions: 2
Compression:
Stored size: 1.73 KB
Contents
# frozen_string_literal: true # Copyright 2019 OpenTelemetry Authors # # SPDX-License-Identifier: Apache-2.0 module OpenTelemetry # The Trace API allows recording a set of events, triggered as a result of a # single logical operation, consolidated across various components of an # application. module Trace # An invalid trace identifier, a 16-byte array with all zero bytes, encoded # as a hexadecimal string. INVALID_TRACE_ID = ('0' * 32).freeze # An invalid span identifier, an 8-byte array with all zero bytes, encoded # as a hexadecimal string. INVALID_SPAN_ID = ('0' * 16).freeze # Generates a valid trace identifier, a 16-byte array with at least one # non-zero byte, encoded as a hexadecimal string. # # @return [String] a hexadecimal string encoding of a valid trace ID. def self.generate_trace_id loop do id = Random::DEFAULT.bytes(16).unpack1('H*') return id unless id == INVALID_TRACE_ID end end # Generates a valid span identifier, an 8-byte array with at least one # non-zero byte, encoded as a hexadecimal string. # # @return [String] a hexadecimal string encoding of a valid span ID. def self.generate_span_id loop do id = Random::DEFAULT.bytes(8).unpack1('H*') return id unless id == INVALID_SPAN_ID end end end end require 'opentelemetry/trace/event' require 'opentelemetry/trace/link' require 'opentelemetry/trace/propagation' require 'opentelemetry/trace/trace_flags' require 'opentelemetry/trace/span_context' require 'opentelemetry/trace/span_kind' require 'opentelemetry/trace/span' require 'opentelemetry/trace/status' require 'opentelemetry/trace/tracer' require 'opentelemetry/trace/tracer_provider'
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
opentelemetry-api-0.4.0 | lib/opentelemetry/trace.rb |
opentelemetry-api-0.3.0 | lib/opentelemetry/trace.rb |