Sha256: ae0414a9dbd477de8ab1cc2c4e5500d82f84dc8808086dd5119e465fcbd2f256

Contents?: true

Size: 1.28 KB

Versions: 22

Compression:

Stored size: 1.28 KB

Contents

# frozen_string_literal: true

# Copyright The OpenTelemetry Authors
#
# SPDX-License-Identifier: Apache-2.0

module OpenTelemetry
  module Trace
    # Type of span. Can be used to specify additional relationships between spans in addition to a
    # parent/child relationship. For API ergonomics, use of the symbols rather than the constants
    # may be preferred. For example:
    #
    #   span = tracer.start_span('op', kind: :client)
    module SpanKind
      # Default value. Indicates that the span is used internally.
      INTERNAL = :internal

      # Indicates that the span covers server-side handling of an RPC or other remote request.
      SERVER = :server

      # Indicates that the span covers the client-side wrapper around an RPC or other remote request.
      CLIENT = :client

      # Indicates that the span describes producer sending a message to a broker. Unlike client and
      # server, there is no direct critical path latency relationship between producer and consumer
      # spans.
      PRODUCER = :producer

      # Indicates that the span describes consumer recieving a message from a broker. Unlike client
      # and server, there is no direct critical path latency relationship between producer and
      # consumer spans.
      CONSUMER = :consumer
    end
  end
end

Version data entries

22 entries across 22 versions & 1 rubygems

Version Path
opentelemetry-api-0.12.0 lib/opentelemetry/trace/span_kind.rb
opentelemetry-api-0.11.0 lib/opentelemetry/trace/span_kind.rb