opentelemetry-sdk 0.14.0 → 1.0.0.rc2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +110 -44
- data/README.md +2 -2
- data/lib/opentelemetry/sdk.rb +4 -3
- data/lib/opentelemetry/sdk/configurator.rb +52 -33
- data/lib/opentelemetry/sdk/forwarding_logger.rb +69 -0
- data/lib/opentelemetry/sdk/internal.rb +3 -3
- data/lib/opentelemetry/sdk/resources/constants.rb +48 -3
- data/lib/opentelemetry/sdk/resources/resource.rb +8 -1
- data/lib/opentelemetry/sdk/trace.rb +2 -3
- data/lib/opentelemetry/sdk/trace/event.rb +7 -36
- data/lib/opentelemetry/sdk/trace/export.rb +1 -2
- data/lib/opentelemetry/sdk/trace/export/batch_span_processor.rb +10 -5
- data/lib/opentelemetry/sdk/trace/export/console_span_exporter.rb +4 -0
- data/lib/opentelemetry/sdk/trace/export/in_memory_span_exporter.rb +23 -4
- data/lib/opentelemetry/sdk/trace/export/simple_span_processor.rb +4 -2
- data/lib/opentelemetry/sdk/trace/export/{noop_span_exporter.rb → span_exporter.rb} +18 -7
- data/lib/opentelemetry/sdk/trace/span.rb +83 -39
- data/lib/opentelemetry/sdk/trace/span_data.rb +25 -18
- data/lib/opentelemetry/sdk/trace/span_limits.rb +60 -0
- data/lib/opentelemetry/sdk/trace/{noop_span_processor.rb → span_processor.rb} +5 -8
- data/lib/opentelemetry/sdk/trace/tracer.rb +1 -37
- data/lib/opentelemetry/sdk/trace/tracer_provider.rb +106 -19
- data/lib/opentelemetry/sdk/version.rb +1 -1
- metadata +43 -20
- data/lib/opentelemetry/sdk/baggage.rb +0 -16
- data/lib/opentelemetry/sdk/baggage/builder.rb +0 -40
- data/lib/opentelemetry/sdk/baggage/manager.rb +0 -97
- data/lib/opentelemetry/sdk/trace/config.rb +0 -18
- data/lib/opentelemetry/sdk/trace/config/trace_config.rb +0 -79
- data/lib/opentelemetry/sdk/trace/export/multi_span_exporter.rb +0 -59
- data/lib/opentelemetry/sdk/trace/multi_span_processor.rb +0 -86
@@ -10,24 +10,24 @@ module OpenTelemetry
|
|
10
10
|
# implementation.
|
11
11
|
module Trace
|
12
12
|
# SpanData is a Struct containing {Span} data for export.
|
13
|
-
SpanData = Struct.new(:name,
|
14
|
-
:kind,
|
15
|
-
:status,
|
16
|
-
:parent_span_id,
|
17
|
-
:total_recorded_attributes,
|
18
|
-
:total_recorded_events,
|
19
|
-
:total_recorded_links,
|
20
|
-
:start_timestamp,
|
21
|
-
:end_timestamp,
|
22
|
-
:attributes,
|
23
|
-
:links,
|
24
|
-
:events,
|
25
|
-
:resource,
|
26
|
-
:instrumentation_library,
|
27
|
-
:span_id,
|
28
|
-
:trace_id,
|
29
|
-
:trace_flags,
|
30
|
-
:tracestate) do
|
13
|
+
SpanData = Struct.new(:name, # String
|
14
|
+
:kind, # Symbol: :internal, :producer, :consumer, :client, :server
|
15
|
+
:status, # Status
|
16
|
+
:parent_span_id, # String (8 byte binary), may be OpenTelemetry::Trace::INVALID_SPAN_ID
|
17
|
+
:total_recorded_attributes, # Integer
|
18
|
+
:total_recorded_events, # Integer
|
19
|
+
:total_recorded_links, # Integer
|
20
|
+
:start_timestamp, # Integer nanoseconds since Epoch
|
21
|
+
:end_timestamp, # Integer nanoseconds since Epoch
|
22
|
+
:attributes, # optional Hash{String => String, Numeric, Boolean, Array<String, Numeric, Boolean>}
|
23
|
+
:links, # optional Array[OpenTelemetry::Trace::Link]
|
24
|
+
:events, # optional Array[Event]
|
25
|
+
:resource, # OpenTelemetry::SDK::Resources::Resource
|
26
|
+
:instrumentation_library, # OpenTelemetry::SDK::InstrumentationLibrary
|
27
|
+
:span_id, # String (8 byte binary)
|
28
|
+
:trace_id, # String (16-byte binary)
|
29
|
+
:trace_flags, # Integer (8-bit byte of bit flags)
|
30
|
+
:tracestate) do # OpenTelemetry::Trace::Tracestate
|
31
31
|
# Returns the lowercase [hex encoded](https://tools.ietf.org/html/rfc4648#section-8) span ID.
|
32
32
|
#
|
33
33
|
# @return [String] A 16-hex-character lowercase string.
|
@@ -41,6 +41,13 @@ module OpenTelemetry
|
|
41
41
|
def hex_trace_id
|
42
42
|
trace_id.unpack1('H*')
|
43
43
|
end
|
44
|
+
|
45
|
+
# Returns the lowercase [hex encoded](https://tools.ietf.org/html/rfc4648#section-8) parent span ID.
|
46
|
+
#
|
47
|
+
# @return [String] A 16-hex-character lowercase string.
|
48
|
+
def hex_parent_span_id
|
49
|
+
parent_span_id.unpack1('H*')
|
50
|
+
end
|
44
51
|
end
|
45
52
|
end
|
46
53
|
end
|
@@ -0,0 +1,60 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright The OpenTelemetry Authors
|
4
|
+
#
|
5
|
+
# SPDX-License-Identifier: Apache-2.0
|
6
|
+
|
7
|
+
module OpenTelemetry
|
8
|
+
module SDK
|
9
|
+
module Trace
|
10
|
+
# Class that holds global trace parameters.
|
11
|
+
class SpanLimits
|
12
|
+
# The global default max number of attributes per {Span}.
|
13
|
+
attr_reader :attribute_count_limit
|
14
|
+
|
15
|
+
# The global default max length of attribute value per {Span}.
|
16
|
+
attr_reader :attribute_length_limit
|
17
|
+
|
18
|
+
# The global default max number of {OpenTelemetry::SDK::Trace::Event}s per {Span}.
|
19
|
+
attr_reader :event_count_limit
|
20
|
+
|
21
|
+
# The global default max number of {OpenTelemetry::Trace::Link} entries per {Span}.
|
22
|
+
attr_reader :link_count_limit
|
23
|
+
|
24
|
+
# The global default max number of attributes per {OpenTelemetry::SDK::Trace::Event}.
|
25
|
+
attr_reader :attribute_per_event_count_limit
|
26
|
+
|
27
|
+
# The global default max number of attributes per {OpenTelemetry::Trace::Link}.
|
28
|
+
attr_reader :attribute_per_link_count_limit
|
29
|
+
|
30
|
+
# Returns a {SpanLimits} with the desired values.
|
31
|
+
#
|
32
|
+
# @return [SpanLimits] with the desired values.
|
33
|
+
# @raise [ArgumentError] if any of the max numbers are not positive.
|
34
|
+
def initialize(attribute_count_limit: Integer(ENV.fetch('OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT', 128)), # rubocop:disable Metrics/AbcSize, Metrics/CyclomaticComplexity, Metrics/PerceivedComplexity
|
35
|
+
attribute_length_limit: ENV['OTEL_RUBY_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT'],
|
36
|
+
event_count_limit: Integer(ENV.fetch('OTEL_SPAN_EVENT_COUNT_LIMIT', 128)),
|
37
|
+
link_count_limit: Integer(ENV.fetch('OTEL_SPAN_LINK_COUNT_LIMIT', 128)),
|
38
|
+
attribute_per_event_count_limit: attribute_count_limit,
|
39
|
+
attribute_per_link_count_limit: attribute_count_limit)
|
40
|
+
raise ArgumentError, 'attribute_count_limit must be positive' unless attribute_count_limit.positive?
|
41
|
+
raise ArgumentError, 'attribute_length_limit must not be less than 32' unless attribute_length_limit.nil? || Integer(attribute_length_limit) >= 32
|
42
|
+
raise ArgumentError, 'event_count_limit must be positive' unless event_count_limit.positive?
|
43
|
+
raise ArgumentError, 'link_count_limit must be positive' unless link_count_limit.positive?
|
44
|
+
raise ArgumentError, 'attribute_per_event_count_limit must be positive' unless attribute_per_event_count_limit.positive?
|
45
|
+
raise ArgumentError, 'attribute_per_link_count_limit must be positive' unless attribute_per_link_count_limit.positive?
|
46
|
+
|
47
|
+
@attribute_count_limit = attribute_count_limit
|
48
|
+
@attribute_length_limit = attribute_length_limit.nil? ? nil : Integer(attribute_length_limit)
|
49
|
+
@event_count_limit = event_count_limit
|
50
|
+
@link_count_limit = link_count_limit
|
51
|
+
@attribute_per_event_count_limit = attribute_per_event_count_limit
|
52
|
+
@attribute_per_link_count_limit = attribute_per_link_count_limit
|
53
|
+
end
|
54
|
+
|
55
|
+
# The default {SpanLimits}.
|
56
|
+
DEFAULT = new
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|
@@ -4,17 +4,14 @@
|
|
4
4
|
#
|
5
5
|
# SPDX-License-Identifier: Apache-2.0
|
6
6
|
|
7
|
-
require 'singleton'
|
8
|
-
|
9
7
|
module OpenTelemetry
|
10
8
|
module SDK
|
11
9
|
module Trace
|
12
|
-
#
|
13
|
-
#
|
14
|
-
#
|
15
|
-
|
16
|
-
|
17
|
-
|
10
|
+
# SpanProcessor describes a duck type and provides synchronous no-op hooks for when a
|
11
|
+
# {Span} is started or when a {Span} is ended. It is not required to subclass this
|
12
|
+
# class to provide an implementation of SpanProcessor, provided the interface is
|
13
|
+
# satisfied.
|
14
|
+
class SpanProcessor
|
18
15
|
# Called when a {Span} is started, if the {Span#recording?}
|
19
16
|
# returns true.
|
20
17
|
#
|
@@ -9,10 +9,6 @@ module OpenTelemetry
|
|
9
9
|
module Trace
|
10
10
|
# {Tracer} is the SDK implementation of {OpenTelemetry::Trace::Tracer}.
|
11
11
|
class Tracer < OpenTelemetry::Trace::Tracer
|
12
|
-
attr_reader :name
|
13
|
-
attr_reader :version
|
14
|
-
attr_reader :tracer_provider
|
15
|
-
|
16
12
|
# @api private
|
17
13
|
#
|
18
14
|
# Returns a new {Tracer} instance.
|
@@ -23,8 +19,6 @@ module OpenTelemetry
|
|
23
19
|
#
|
24
20
|
# @return [Tracer]
|
25
21
|
def initialize(name, version, tracer_provider)
|
26
|
-
@name = name
|
27
|
-
@version = version
|
28
22
|
@instrumentation_library = InstrumentationLibrary.new(name, version)
|
29
23
|
@tracer_provider = tracer_provider
|
30
24
|
end
|
@@ -42,37 +36,7 @@ module OpenTelemetry
|
|
42
36
|
parent_span_id = parent_span_context.span_id
|
43
37
|
trace_id = parent_span_context.trace_id
|
44
38
|
end
|
45
|
-
trace_id
|
46
|
-
sampler = tracer_provider.active_trace_config.sampler
|
47
|
-
result = sampler.should_sample?(trace_id: trace_id, parent_context: with_parent, links: links, name: name, kind: kind, attributes: attributes)
|
48
|
-
internal_create_span(result, name, kind, trace_id, parent_span_id, attributes, links, start_timestamp, with_parent)
|
49
|
-
end
|
50
|
-
|
51
|
-
private
|
52
|
-
|
53
|
-
def internal_create_span(result, name, kind, trace_id, parent_span_id, attributes, links, start_timestamp, parent_context) # rubocop:disable Metrics/AbcSize, Metrics/MethodLength
|
54
|
-
span_id = tracer_provider.id_generator.generate_span_id
|
55
|
-
if result.recording? && !tracer_provider.stopped?
|
56
|
-
trace_flags = result.sampled? ? OpenTelemetry::Trace::TraceFlags::SAMPLED : OpenTelemetry::Trace::TraceFlags::DEFAULT
|
57
|
-
context = OpenTelemetry::Trace::SpanContext.new(trace_id: trace_id, span_id: span_id, trace_flags: trace_flags, tracestate: result.tracestate)
|
58
|
-
attributes = attributes&.merge(result.attributes) || result.attributes
|
59
|
-
Span.new(
|
60
|
-
context,
|
61
|
-
parent_context,
|
62
|
-
name,
|
63
|
-
kind,
|
64
|
-
parent_span_id,
|
65
|
-
tracer_provider.active_trace_config,
|
66
|
-
tracer_provider.active_span_processor,
|
67
|
-
attributes,
|
68
|
-
links,
|
69
|
-
start_timestamp || Time.now,
|
70
|
-
tracer_provider.resource,
|
71
|
-
@instrumentation_library
|
72
|
-
)
|
73
|
-
else
|
74
|
-
OpenTelemetry::Trace::Span.new(span_context: OpenTelemetry::Trace::SpanContext.new(trace_id: trace_id, span_id: span_id, tracestate: result.tracestate))
|
75
|
-
end
|
39
|
+
@tracer_provider.internal_create_span(name, kind, trace_id, parent_span_id, attributes, links, start_timestamp, with_parent, @instrumentation_library)
|
76
40
|
end
|
77
41
|
end
|
78
42
|
end
|
@@ -8,24 +8,35 @@ module OpenTelemetry
|
|
8
8
|
module SDK
|
9
9
|
module Trace
|
10
10
|
# {TracerProvider} is the SDK implementation of {OpenTelemetry::Trace::TracerProvider}.
|
11
|
-
class TracerProvider < OpenTelemetry::Trace::TracerProvider
|
11
|
+
class TracerProvider < OpenTelemetry::Trace::TracerProvider # rubocop:disable Metrics/ClassLength
|
12
12
|
Key = Struct.new(:name, :version)
|
13
13
|
private_constant(:Key)
|
14
14
|
|
15
|
-
attr_accessor :
|
16
|
-
attr_reader :
|
17
|
-
alias stopped? stopped
|
15
|
+
attr_accessor :span_limits, :id_generator, :sampler
|
16
|
+
attr_reader :resource
|
18
17
|
|
19
18
|
# Returns a new {TracerProvider} instance.
|
20
19
|
#
|
20
|
+
# @param [optional Sampler] sampler The sampling policy for new spans
|
21
|
+
# @param [optional Resource] resource The resource to associate with spans
|
22
|
+
# created by Tracers created by this TracerProvider
|
23
|
+
# @param [optional IDGenerator] id_generator The trace and span ID generation
|
24
|
+
# policy
|
25
|
+
# @param [optional SpanLimits] span_limits The limits to apply to attribute,
|
26
|
+
# event and link counts for Spans created by Tracers created by this
|
27
|
+
# TracerProvider
|
28
|
+
#
|
21
29
|
# @return [TracerProvider]
|
22
|
-
def initialize(
|
30
|
+
def initialize(sampler: sampler_from_environment(Samplers.parent_based(root: Samplers::ALWAYS_ON)),
|
31
|
+
resource: OpenTelemetry::SDK::Resources::Resource.create,
|
32
|
+
id_generator: OpenTelemetry::Trace,
|
33
|
+
span_limits: SpanLimits::DEFAULT)
|
23
34
|
@mutex = Mutex.new
|
24
35
|
@registry = {}
|
25
|
-
@
|
26
|
-
@
|
27
|
-
@
|
28
|
-
@
|
36
|
+
@span_processors = []
|
37
|
+
@span_limits = span_limits
|
38
|
+
@sampler = sampler
|
39
|
+
@id_generator = id_generator
|
29
40
|
@stopped = false
|
30
41
|
@resource = resource
|
31
42
|
end
|
@@ -39,10 +50,11 @@ module OpenTelemetry
|
|
39
50
|
def tracer(name = nil, version = nil)
|
40
51
|
name ||= ''
|
41
52
|
version ||= ''
|
53
|
+
OpenTelemetry.logger.warn 'calling TracerProvider#tracer without providing a tracer name.' if name.empty?
|
42
54
|
@mutex.synchronize { @registry[Key.new(name, version)] ||= Tracer.new(name, version, self) }
|
43
55
|
end
|
44
56
|
|
45
|
-
# Attempts to stop all the activity for this {
|
57
|
+
# Attempts to stop all the activity for this {TracerProvider}. Calls
|
46
58
|
# SpanProcessor#shutdown for all registered SpanProcessors.
|
47
59
|
#
|
48
60
|
# This operation may block until all the Spans are processed. Must be
|
@@ -52,23 +64,54 @@ module OpenTelemetry
|
|
52
64
|
# After this is called all the newly created {Span}s will be no-op.
|
53
65
|
#
|
54
66
|
# @param [optional Numeric] timeout An optional timeout in seconds.
|
67
|
+
# @return [Integer] Export::SUCCESS if no error occurred, Export::FAILURE if
|
68
|
+
# a non-specific failure occurred, Export::TIMEOUT if a timeout occurred.
|
55
69
|
def shutdown(timeout: nil)
|
56
70
|
@mutex.synchronize do
|
57
71
|
if @stopped
|
58
72
|
OpenTelemetry.logger.warn('calling Tracer#shutdown multiple times.')
|
59
|
-
return
|
73
|
+
return Export::FAILURE
|
74
|
+
end
|
75
|
+
|
76
|
+
start_time = OpenTelemetry::Common::Utilities.timeout_timestamp
|
77
|
+
results = @span_processors.map do |processor|
|
78
|
+
remaining_timeout = OpenTelemetry::Common::Utilities.maybe_timeout(timeout, start_time)
|
79
|
+
break [Export::TIMEOUT] if remaining_timeout&.zero?
|
80
|
+
|
81
|
+
processor.shutdown(timeout: remaining_timeout)
|
60
82
|
end
|
61
|
-
@active_span_processor.shutdown(timeout: timeout)
|
62
83
|
@stopped = true
|
84
|
+
results.max || Export::SUCCESS
|
63
85
|
end
|
64
86
|
end
|
65
87
|
|
66
|
-
#
|
88
|
+
# Immediately export all spans that have not yet been exported for all the
|
89
|
+
# registered SpanProcessors.
|
67
90
|
#
|
68
|
-
#
|
69
|
-
#
|
70
|
-
#
|
71
|
-
#
|
91
|
+
# This method should only be called in cases where it is absolutely
|
92
|
+
# necessary, such as when using some FaaS providers that may suspend
|
93
|
+
# the process after an invocation, but before the `Processor` exports
|
94
|
+
# the completed spans.
|
95
|
+
#
|
96
|
+
# @param [optional Numeric] timeout An optional timeout in seconds.
|
97
|
+
# @return [Integer] Export::SUCCESS if no error occurred, Export::FAILURE if
|
98
|
+
# a non-specific failure occurred, Export::TIMEOUT if a timeout occurred.
|
99
|
+
def force_flush(timeout: nil)
|
100
|
+
@mutex.synchronize do
|
101
|
+
return Export::SUCCESS if @stopped
|
102
|
+
|
103
|
+
start_time = OpenTelemetry::Common::Utilities.timeout_timestamp
|
104
|
+
results = @span_processors.map do |processor|
|
105
|
+
remaining_timeout = OpenTelemetry::Common::Utilities.maybe_timeout(timeout, start_time)
|
106
|
+
return Export::TIMEOUT if remaining_timeout&.zero?
|
107
|
+
|
108
|
+
processor.force_flush(timeout: remaining_timeout)
|
109
|
+
end
|
110
|
+
results.max || Export::SUCCESS
|
111
|
+
end
|
112
|
+
end
|
113
|
+
|
114
|
+
# Adds a new SpanProcessor to this {Tracer}.
|
72
115
|
#
|
73
116
|
# @param span_processor the new SpanProcessor to be added.
|
74
117
|
def add_span_processor(span_processor)
|
@@ -77,9 +120,53 @@ module OpenTelemetry
|
|
77
120
|
OpenTelemetry.logger.warn('calling Tracer#add_span_processor after shutdown.')
|
78
121
|
return
|
79
122
|
end
|
80
|
-
@
|
81
|
-
|
123
|
+
@span_processors = @span_processors.dup.push(span_processor)
|
124
|
+
end
|
125
|
+
end
|
126
|
+
|
127
|
+
# @api private
|
128
|
+
def internal_create_span(name, kind, trace_id, parent_span_id, attributes, links, start_timestamp, parent_context, instrumentation_library) # rubocop:disable Metrics/MethodLength
|
129
|
+
trace_id ||= @id_generator.generate_trace_id
|
130
|
+
result = @sampler.should_sample?(trace_id: trace_id, parent_context: parent_context, links: links, name: name, kind: kind, attributes: attributes)
|
131
|
+
span_id = @id_generator.generate_span_id
|
132
|
+
if result.recording? && !@stopped
|
133
|
+
trace_flags = result.sampled? ? OpenTelemetry::Trace::TraceFlags::SAMPLED : OpenTelemetry::Trace::TraceFlags::DEFAULT
|
134
|
+
context = OpenTelemetry::Trace::SpanContext.new(trace_id: trace_id, span_id: span_id, trace_flags: trace_flags, tracestate: result.tracestate)
|
135
|
+
attributes = attributes&.merge(result.attributes) || result.attributes
|
136
|
+
Span.new(
|
137
|
+
context,
|
138
|
+
parent_context,
|
139
|
+
name,
|
140
|
+
kind,
|
141
|
+
parent_span_id,
|
142
|
+
@span_limits,
|
143
|
+
@span_processors,
|
144
|
+
attributes,
|
145
|
+
links,
|
146
|
+
start_timestamp,
|
147
|
+
@resource,
|
148
|
+
instrumentation_library
|
149
|
+
)
|
150
|
+
else
|
151
|
+
OpenTelemetry::Trace.non_recording_span(OpenTelemetry::Trace::SpanContext.new(trace_id: trace_id, span_id: span_id, tracestate: result.tracestate))
|
152
|
+
end
|
153
|
+
end
|
154
|
+
|
155
|
+
private
|
156
|
+
|
157
|
+
def sampler_from_environment(default_sampler) # rubocop:disable Metrics/CyclomaticComplexity
|
158
|
+
case ENV['OTEL_TRACES_SAMPLER']
|
159
|
+
when 'always_on' then Samplers::ALWAYS_ON
|
160
|
+
when 'always_off' then Samplers::ALWAYS_OFF
|
161
|
+
when 'traceidratio' then Samplers.trace_id_ratio_based(Float(ENV.fetch('OTEL_TRACES_SAMPLER_ARG', 1.0)))
|
162
|
+
when 'parentbased_always_on' then Samplers.parent_based(root: Samplers::ALWAYS_ON)
|
163
|
+
when 'parentbased_always_off' then Samplers.parent_based(root: Samplers::ALWAYS_OFF)
|
164
|
+
when 'parentbased_traceidratio' then Samplers.parent_based(root: Samplers.trace_id_ratio_based(Float(ENV.fetch('OTEL_TRACES_SAMPLER_ARG', 1.0))))
|
165
|
+
else default_sampler
|
82
166
|
end
|
167
|
+
rescue StandardError => e
|
168
|
+
OpenTelemetry.handle_error(exception: e, message: "installing default sampler #{default_sampler.description}")
|
169
|
+
default_sampler
|
83
170
|
end
|
84
171
|
end
|
85
172
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: opentelemetry-sdk
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.0.rc2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- OpenTelemetry Authors
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-06-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: opentelemetry-api
|
@@ -16,28 +16,42 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 0.
|
19
|
+
version: 1.0.0.rc2
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 0.
|
26
|
+
version: 1.0.0.rc2
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: opentelemetry-common
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 0.
|
33
|
+
version: 0.19.0
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 0.
|
40
|
+
version: 0.19.0
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: opentelemetry-instrumentation-base
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: 0.18.1
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: 0.18.1
|
41
55
|
- !ruby/object:Gem::Dependency
|
42
56
|
name: bundler
|
43
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -80,6 +94,20 @@ dependencies:
|
|
80
94
|
- - "~>"
|
81
95
|
- !ruby/object:Gem::Version
|
82
96
|
version: '5.0'
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: opentelemetry-exporter-jaeger
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - "~>"
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: 0.18.0
|
104
|
+
type: :development
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - "~>"
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: 0.18.0
|
83
111
|
- !ruby/object:Gem::Dependency
|
84
112
|
name: rake
|
85
113
|
requirement: !ruby/object:Gem::Requirement
|
@@ -163,29 +191,22 @@ files:
|
|
163
191
|
- README.md
|
164
192
|
- lib/opentelemetry-sdk.rb
|
165
193
|
- lib/opentelemetry/sdk.rb
|
166
|
-
- lib/opentelemetry/sdk/baggage.rb
|
167
|
-
- lib/opentelemetry/sdk/baggage/builder.rb
|
168
|
-
- lib/opentelemetry/sdk/baggage/manager.rb
|
169
194
|
- lib/opentelemetry/sdk/configurator.rb
|
195
|
+
- lib/opentelemetry/sdk/forwarding_logger.rb
|
170
196
|
- lib/opentelemetry/sdk/instrumentation_library.rb
|
171
197
|
- lib/opentelemetry/sdk/internal.rb
|
172
198
|
- lib/opentelemetry/sdk/resources.rb
|
173
199
|
- lib/opentelemetry/sdk/resources/constants.rb
|
174
200
|
- lib/opentelemetry/sdk/resources/resource.rb
|
175
201
|
- lib/opentelemetry/sdk/trace.rb
|
176
|
-
- lib/opentelemetry/sdk/trace/config.rb
|
177
|
-
- lib/opentelemetry/sdk/trace/config/trace_config.rb
|
178
202
|
- lib/opentelemetry/sdk/trace/event.rb
|
179
203
|
- lib/opentelemetry/sdk/trace/export.rb
|
180
204
|
- lib/opentelemetry/sdk/trace/export/batch_span_processor.rb
|
181
205
|
- lib/opentelemetry/sdk/trace/export/console_span_exporter.rb
|
182
206
|
- lib/opentelemetry/sdk/trace/export/in_memory_span_exporter.rb
|
183
207
|
- lib/opentelemetry/sdk/trace/export/metrics_reporter.rb
|
184
|
-
- lib/opentelemetry/sdk/trace/export/multi_span_exporter.rb
|
185
|
-
- lib/opentelemetry/sdk/trace/export/noop_span_exporter.rb
|
186
208
|
- lib/opentelemetry/sdk/trace/export/simple_span_processor.rb
|
187
|
-
- lib/opentelemetry/sdk/trace/
|
188
|
-
- lib/opentelemetry/sdk/trace/noop_span_processor.rb
|
209
|
+
- lib/opentelemetry/sdk/trace/export/span_exporter.rb
|
189
210
|
- lib/opentelemetry/sdk/trace/samplers.rb
|
190
211
|
- lib/opentelemetry/sdk/trace/samplers/constant_sampler.rb
|
191
212
|
- lib/opentelemetry/sdk/trace/samplers/decision.rb
|
@@ -194,6 +215,8 @@ files:
|
|
194
215
|
- lib/opentelemetry/sdk/trace/samplers/trace_id_ratio_based.rb
|
195
216
|
- lib/opentelemetry/sdk/trace/span.rb
|
196
217
|
- lib/opentelemetry/sdk/trace/span_data.rb
|
218
|
+
- lib/opentelemetry/sdk/trace/span_limits.rb
|
219
|
+
- lib/opentelemetry/sdk/trace/span_processor.rb
|
197
220
|
- lib/opentelemetry/sdk/trace/tracer.rb
|
198
221
|
- lib/opentelemetry/sdk/trace/tracer_provider.rb
|
199
222
|
- lib/opentelemetry/sdk/version.rb
|
@@ -201,10 +224,10 @@ homepage: https://github.com/open-telemetry/opentelemetry-ruby
|
|
201
224
|
licenses:
|
202
225
|
- Apache-2.0
|
203
226
|
metadata:
|
204
|
-
changelog_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-sdk/
|
227
|
+
changelog_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-sdk/v1.0.0.rc2/file.CHANGELOG.html
|
205
228
|
source_code_uri: https://github.com/open-telemetry/opentelemetry-ruby/tree/main/sdk
|
206
229
|
bug_tracker_uri: https://github.com/open-telemetry/opentelemetry-ruby/issues
|
207
|
-
documentation_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-sdk/
|
230
|
+
documentation_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-sdk/v1.0.0.rc2
|
208
231
|
post_install_message:
|
209
232
|
rdoc_options: []
|
210
233
|
require_paths:
|
@@ -216,11 +239,11 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
216
239
|
version: 2.5.0
|
217
240
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
218
241
|
requirements:
|
219
|
-
- - "
|
242
|
+
- - ">"
|
220
243
|
- !ruby/object:Gem::Version
|
221
|
-
version:
|
244
|
+
version: 1.3.1
|
222
245
|
requirements: []
|
223
|
-
rubygems_version: 3.1.
|
246
|
+
rubygems_version: 3.1.6
|
224
247
|
signing_key:
|
225
248
|
specification_version: 4
|
226
249
|
summary: A stats collection and distributed tracing framework
|