Class: OpenTelemetry::SDK::Trace::Samplers::Result
- Inherits:
-
Object
- Object
- OpenTelemetry::SDK::Trace::Samplers::Result
- Defined in:
- lib/opentelemetry/sdk/trace/samplers/result.rb
Overview
The Result class represents an arbitrary sampling result. It has boolean values for the sampling decision and whether to record events, and a collection of attributes to be attached to a sampled root span.
Instance Attribute Summary collapse
-
#attributes ⇒ Hash{String => String, Numeric, Boolean, Array<String, Numeric, Boolean>}
readonly
Returns a frozen hash of attributes to be attached to the span.
-
#tracestate ⇒ Tracestate
readonly
Returns a Tracestate to be associated with the span.
Instance Method Summary collapse
-
#initialize(decision:, tracestate:, attributes: nil) ⇒ Result
constructor
Returns a new sampling result with the specified decision and attributes.
-
#recording? ⇒ Boolean
Returns true if this span should record events, attributes, status, etc.
-
#sampled? ⇒ Boolean
Returns true if this span should be sampled.
Constructor Details
#initialize(decision:, tracestate:, attributes: nil) ⇒ Result
Returns a new sampling result with the specified decision and attributes.
43 44 45 46 47 |
# File 'lib/opentelemetry/sdk/trace/samplers/result.rb', line 43 def initialize(decision:, tracestate:, attributes: nil) @decision = decision @attributes = attributes.freeze || EMPTY_HASH @tracestate = tracestate end |
Instance Attribute Details
#attributes ⇒ Hash{String => String, Numeric, Boolean, Array<String, Numeric, Boolean>} (readonly)
Returns a frozen hash of attributes to be attached to the span.
23 24 25 |
# File 'lib/opentelemetry/sdk/trace/samplers/result.rb', line 23 def attributes @attributes end |
#tracestate ⇒ Tracestate (readonly)
Returns a Tracestate to be associated with the span.
28 29 30 |
# File 'lib/opentelemetry/sdk/trace/samplers/result.rb', line 28 def tracestate @tracestate end |
Instance Method Details
#recording? ⇒ Boolean
Returns true if this span should record events, attributes, status, etc.
59 60 61 |
# File 'lib/opentelemetry/sdk/trace/samplers/result.rb', line 59 def recording? @decision != Decision::DROP end |
#sampled? ⇒ Boolean
Returns true if this span should be sampled.
52 53 54 |
# File 'lib/opentelemetry/sdk/trace/samplers/result.rb', line 52 def sampled? @decision == Decision::RECORD_AND_SAMPLE end |