abstract struct OpenTelemetry::API::AbstractSpanContext

Direct Known Subclasses

Defined in:

api/abstract_span_context.cr
api/span_context/abstract_config.cr

Constructors

Class Method Summary

Instance Method Summary

Constructor Detail

def self.new(trace_id, span_id, parent_id, trace_flags, trace_state, remote = false) #

[View source]
def self.new(inherited_context : SpanContext) #

[View source]
def self.new(configuration : Config) #

[View source]
def self.new #

[View source]

Class Method Detail

def self.build(inherited_context : SpanContext | Nil = nil) #

[View source]

Instance Method Detail

abstract def [](val) #

[View source]
abstract def []=(val, val2) #

[View source]
abstract def []?(val) #

[View source]
abstract def is_remote #

The spec dictates that this name be available: https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/trace/api.md#isvalid


[View source]
abstract def is_valid #

The spec dictates that this name be available: https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/trace/api.md#isvalid


[View source]
abstract def parent_id : Slice(UInt8) | Nil #

This is probably going to be a property


[View source]
abstract def parent_id=(parent_id : Slice(UInt8) | Nil) #

[View source]
abstract def remote : Bool #

This is probably going to be a property


[View source]
abstract def remote=(remote : Bool) #

[View source]
abstract def remote? #

[View source]
abstract def span_id : Slice(UInt8) #

This is probably going to be a property


[View source]
abstract def span_id=(span_id : Slice(UInt8)) #

[View source]
abstract def trace_flags : TraceFlags #

This is probably going to be a property


[View source]
abstract def trace_flags=(trace_flags : TraceFlags) #

[View source]
abstract def trace_id : Slice(UInt8) #

This is probably going to be a property


[View source]
abstract def trace_id=(trace_id : Slice(UInt8)) #

[View source]
abstract def trace_state : Hash(String, String) #

TODO We're currenty playing fast and loose with TraceState. TraceState, per the spec, should be immutable, however, so this will need to be revised. This is probably going to be a property


[View source]
abstract def trace_state=(trace_state : Hash(String, String)) #

[View source]
abstract def valid? #

Returns true is the trace id and span id are non-zero


[View source]