Class: OpenTelemetry::SDK::Trace::SpanLimits
- Inherits:
-
Object
- Object
- OpenTelemetry::SDK::Trace::SpanLimits
- Defined in:
- lib/opentelemetry/sdk/trace/span_limits.rb
Overview
Class that holds global trace parameters.
Constant Summary collapse
- DEFAULT =
The default OpenTelemetry::SDK::Trace::SpanLimits.
new
Instance Attribute Summary collapse
-
#attribute_count_limit ⇒ Object
readonly
The global default max number of attributes per Span.
-
#attribute_length_limit ⇒ Object
readonly
The global default max length of attribute value per Span.
-
#event_attribute_count_limit ⇒ Object
readonly
The global default max number of attributes per Event.
-
#event_attribute_length_limit ⇒ Object
readonly
The global default max length of attribute value per Event.
- #event_count_limit ⇒ Object readonly
-
#link_attribute_count_limit ⇒ Object
readonly
The global default max number of attributes per Trace::Link.
-
#link_count_limit ⇒ Object
readonly
The global default max number of Trace::Link entries per Span.
Instance Method Summary collapse
-
#initialize(attribute_count_limit: Integer(OpenTelemetry::Common::Utilities.config_opt('OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT', 'OTEL_ATTRIBUTE_COUNT_LIMIT', default: 128)), attribute_length_limit: OpenTelemetry::Common::Utilities.config_opt('OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT', 'OTEL_RUBY_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT', 'OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT'), event_count_limit: Integer(OpenTelemetry::Common::Utilities.config_opt('OTEL_SPAN_EVENT_COUNT_LIMIT', default: 128)), link_count_limit: Integer(OpenTelemetry::Common::Utilities.config_opt('OTEL_SPAN_LINK_COUNT_LIMIT', default: 128)), event_attribute_count_limit: Integer(OpenTelemetry::Common::Utilities.config_opt('OTEL_EVENT_ATTRIBUTE_COUNT_LIMIT', default: 128)), event_attribute_length_limit: OpenTelemetry::Common::Utilities.config_opt('OTEL_EVENT_ATTRIBUTE_VALUE_LENGTH_LIMIT', 'OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT'), link_attribute_count_limit: Integer(OpenTelemetry::Common::Utilities.config_opt('OTEL_LINK_ATTRIBUTE_COUNT_LIMIT', default: 128))) ⇒ SpanLimits
constructor
Returns a SpanLimits with the desired values.
Constructor Details
#initialize(attribute_count_limit: Integer(OpenTelemetry::Common::Utilities.config_opt('OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT', 'OTEL_ATTRIBUTE_COUNT_LIMIT', default: 128)), attribute_length_limit: OpenTelemetry::Common::Utilities.config_opt('OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT', 'OTEL_RUBY_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT', 'OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT'), event_count_limit: Integer(OpenTelemetry::Common::Utilities.config_opt('OTEL_SPAN_EVENT_COUNT_LIMIT', default: 128)), link_count_limit: Integer(OpenTelemetry::Common::Utilities.config_opt('OTEL_SPAN_LINK_COUNT_LIMIT', default: 128)), event_attribute_count_limit: Integer(OpenTelemetry::Common::Utilities.config_opt('OTEL_EVENT_ATTRIBUTE_COUNT_LIMIT', default: 128)), event_attribute_length_limit: OpenTelemetry::Common::Utilities.config_opt('OTEL_EVENT_ATTRIBUTE_VALUE_LENGTH_LIMIT', 'OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT'), link_attribute_count_limit: Integer(OpenTelemetry::Common::Utilities.config_opt('OTEL_LINK_ATTRIBUTE_COUNT_LIMIT', default: 128))) ⇒ SpanLimits
Returns a OpenTelemetry::SDK::Trace::SpanLimits with the desired values.
37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
# File 'lib/opentelemetry/sdk/trace/span_limits.rb', line 37 def initialize(attribute_count_limit: Integer(OpenTelemetry::Common::Utilities.config_opt('OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT', 'OTEL_ATTRIBUTE_COUNT_LIMIT', default: 128)), # rubocop:disable Metrics/CyclomaticComplexity, Metrics/PerceivedComplexity attribute_length_limit: OpenTelemetry::Common::Utilities.config_opt('OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT', 'OTEL_RUBY_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT', 'OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT'), event_count_limit: Integer(OpenTelemetry::Common::Utilities.config_opt('OTEL_SPAN_EVENT_COUNT_LIMIT', default: 128)), link_count_limit: Integer(OpenTelemetry::Common::Utilities.config_opt('OTEL_SPAN_LINK_COUNT_LIMIT', default: 128)), event_attribute_count_limit: Integer(OpenTelemetry::Common::Utilities.config_opt('OTEL_EVENT_ATTRIBUTE_COUNT_LIMIT', default: 128)), event_attribute_length_limit: OpenTelemetry::Common::Utilities.config_opt('OTEL_EVENT_ATTRIBUTE_VALUE_LENGTH_LIMIT', 'OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT'), link_attribute_count_limit: Integer(OpenTelemetry::Common::Utilities.config_opt('OTEL_LINK_ATTRIBUTE_COUNT_LIMIT', default: 128))) raise ArgumentError, 'attribute_count_limit must be positive' unless attribute_count_limit.positive? raise ArgumentError, 'attribute_length_limit must not be less than 32' unless attribute_length_limit.nil? || Integer(attribute_length_limit) >= 32 raise ArgumentError, 'event_count_limit must be positive' unless event_count_limit.positive? raise ArgumentError, 'link_count_limit must be positive' unless link_count_limit.positive? raise ArgumentError, 'event_attribute_count_limit must be positive' unless event_attribute_count_limit.positive? raise ArgumentError, 'event_attribute_length_limit must not be less than 32' unless event_attribute_length_limit.nil? || Integer(event_attribute_length_limit) >= 32 raise ArgumentError, 'link_attribute_count_limit must be positive' unless link_attribute_count_limit.positive? @attribute_count_limit = attribute_count_limit @attribute_length_limit = attribute_length_limit.nil? ? nil : Integer(attribute_length_limit) @event_count_limit = event_count_limit @link_count_limit = link_count_limit @event_attribute_count_limit = event_attribute_count_limit @event_attribute_length_limit = event_attribute_length_limit.nil? ? nil : Integer(event_attribute_length_limit) @link_attribute_count_limit = link_attribute_count_limit end |
Instance Attribute Details
#attribute_count_limit ⇒ Object (readonly)
The global default max number of attributes per OpenTelemetry::SDK::Trace::Span.
13 14 15 |
# File 'lib/opentelemetry/sdk/trace/span_limits.rb', line 13 def attribute_count_limit @attribute_count_limit end |
#attribute_length_limit ⇒ Object (readonly)
The global default max length of attribute value per OpenTelemetry::SDK::Trace::Span.
16 17 18 |
# File 'lib/opentelemetry/sdk/trace/span_limits.rb', line 16 def attribute_length_limit @attribute_length_limit end |
#event_attribute_count_limit ⇒ Object (readonly)
The global default max number of attributes per Event.
25 26 27 |
# File 'lib/opentelemetry/sdk/trace/span_limits.rb', line 25 def event_attribute_count_limit @event_attribute_count_limit end |
#event_attribute_length_limit ⇒ Object (readonly)
The global default max length of attribute value per Event.
28 29 30 |
# File 'lib/opentelemetry/sdk/trace/span_limits.rb', line 28 def event_attribute_length_limit @event_attribute_length_limit end |
#event_count_limit ⇒ Object (readonly)
The global default max number of Events per OpenTelemetry::SDK::Trace::Span.
19 20 21 |
# File 'lib/opentelemetry/sdk/trace/span_limits.rb', line 19 def event_count_limit @event_count_limit end |
#link_attribute_count_limit ⇒ Object (readonly)
The global default max number of attributes per Trace::Link.
31 32 33 |
# File 'lib/opentelemetry/sdk/trace/span_limits.rb', line 31 def link_attribute_count_limit @link_attribute_count_limit end |
#link_count_limit ⇒ Object (readonly)
The global default max number of Trace::Link entries per OpenTelemetry::SDK::Trace::Span.
22 23 24 |
# File 'lib/opentelemetry/sdk/trace/span_limits.rb', line 22 def link_count_limit @link_count_limit end |