Sha256: 86ea79644add2c8ea4b41f27fffd16b4e3d83056b92f959a15662a3c574a283f

Contents?: true

Size: 1.81 KB

Versions: 11

Compression:

Stored size: 1.81 KB

Contents

# typed: true

module Datadog
  module Tracing
    # Trace digest that represents the important parts of an active trace.
    # Used to propagate context and continue traces across execution boundaries.
    # @public_api
    class TraceDigest
      attr_reader \
        :span_id,
        :span_name,
        :span_resource,
        :span_service,
        :span_type,
        :trace_hostname,
        :trace_id,
        :trace_name,
        :trace_origin,
        :trace_process_id,
        :trace_resource,
        :trace_runtime_id,
        :trace_sampling_priority,
        :trace_service

      def initialize(
        span_id: nil,
        span_name: nil,
        span_resource: nil,
        span_service: nil,
        span_type: nil,
        trace_hostname: nil,
        trace_id: nil,
        trace_name: nil,
        trace_origin: nil,
        trace_process_id: nil,
        trace_resource: nil,
        trace_runtime_id: nil,
        trace_sampling_priority: nil,
        trace_service: nil
      )
        @span_id = span_id
        @span_name = span_name && span_name.dup.freeze
        @span_resource = span_resource && span_resource.dup.freeze
        @span_service = span_service && span_service.dup.freeze
        @span_type = span_type && span_type.dup.freeze
        @trace_hostname = trace_hostname && trace_hostname.dup.freeze
        @trace_id = trace_id
        @trace_name = trace_name && trace_name.dup.freeze
        @trace_origin = trace_origin && trace_origin.dup.freeze
        @trace_process_id = trace_process_id
        @trace_resource = trace_resource && trace_resource.dup.freeze
        @trace_runtime_id = trace_runtime_id && trace_runtime_id.dup.freeze
        @trace_sampling_priority = trace_sampling_priority
        @trace_service = trace_service && trace_service.dup.freeze

        freeze
      end
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
ddtrace-1.5.2 lib/datadog/tracing/trace_digest.rb
ddtrace-1.5.1 lib/datadog/tracing/trace_digest.rb
ddtrace-1.5.0 lib/datadog/tracing/trace_digest.rb
ddtrace-1.4.2 lib/datadog/tracing/trace_digest.rb
ddtrace-1.4.1 lib/datadog/tracing/trace_digest.rb
ddtrace-1.4.0 lib/datadog/tracing/trace_digest.rb
ddtrace-1.3.0 lib/datadog/tracing/trace_digest.rb
ddtrace-1.2.0 lib/datadog/tracing/trace_digest.rb
ddtrace-1.1.0 lib/datadog/tracing/trace_digest.rb
ddtrace-1.0.0 lib/datadog/tracing/trace_digest.rb
ddtrace-1.0.0.beta2 lib/datadog/tracing/trace_digest.rb