opentelemetry-sdk 1.3.0 → 1.3.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7cb2a536d6bf68847feac7a09754a427cf7b17ef3e84bbffa46048f90cd6577e
4
- data.tar.gz: 7b48fd5ecadc6f229b0a32672b280ed6ea924a5e3bf0cd20631694c0bf8ebef0
3
+ metadata.gz: 2a170a385c24de9a417323b40bee2d07f8040bdf2535e08ee4f5cf3ac5ce440c
4
+ data.tar.gz: 8f2bf92d634725f8863e551522dc06e0ccb562e08b1741529cb1f3633cfd344b
5
5
  SHA512:
6
- metadata.gz: 7fe7fe35fbe00ea7e0370b2b9684800eeae0d13d71c10a28040b3a10f82c63422b4986dbf33164e83b97ed90723cf9d8eff1c75b693c854fab3a9a1f05f59846
7
- data.tar.gz: 68795672a61c8a9118507ad0a6cd9b5fa52be71eb06021e2f53e9fc3a490330e1a8c844fd51868b5e413db356f668a8cb32e9a311f36fd51b0e3cb6211111a83
6
+ metadata.gz: 652201b97d3ff1f384a0f101f882d7dbf1cbc8ab6e402a75d3a029784cef5e655cda907df6066d69e2af511933a59323f430ede8903c442d2f267f7cd9c52ac8
7
+ data.tar.gz: 91321cf005b589ffc0e2715d63ea03fad1369e8b3288a9f1493c3847e4f32077167d3cee31fc61fba35c6f8718bd5ac999e2ede13a521a8f6991eca6e7e393d9
data/CHANGELOG.md CHANGED
@@ -1,41 +1,46 @@
1
1
  # Release History: opentelemetry-sdk
2
2
 
3
+ ### v1.3.1 / 2023-11-02
4
+
5
+ * FIXED: Spec compliance for span attribute limit
6
+ * FIXED: BatchSpanProcessor#force_flush: purge inherited spans even on shutdown
7
+
3
8
  ### v1.3.0 / 2023-06-08
4
9
 
5
- * BREAKING CHANGE: Remove support for EoL Ruby 2.7
10
+ * BREAKING CHANGE: Remove support for EoL Ruby 2.7
6
11
 
7
- * ADDED: Remove support for EoL Ruby 2.7
8
- * FIXED: SDK requires opentelemetry-common 0.19.7
12
+ * ADDED: Remove support for EoL Ruby 2.7
13
+ * FIXED: SDK requires opentelemetry-common 0.19.7
9
14
 
10
15
  ### v1.2.1 / 2023-05-30
11
16
 
12
- * FIXED: Untraced only works with parent-based sampler
13
- * DOCS: Improve formatting of usage examples in OpenTelemetry SDK rubydocs
17
+ * FIXED: Untraced only works with parent-based sampler
18
+ * DOCS: Improve formatting of usage examples in OpenTelemetry SDK rubydocs
14
19
 
15
20
  ### v1.2.0 / 2022-09-14
16
21
 
17
- * ADDED: Support OTEL_PROPAGATORS=none
18
- * ADDED: Support OTEL_ATTRIBUTE_{COUNT,VALUE_LENGTH}_LIMIT env vars
19
- * ADDED: Support InstrumentationScope, and update OTLP proto to 0.18.0
20
- * FIXED: SpanLimits setting event attributes length limit
22
+ * ADDED: Support OTEL_PROPAGATORS=none
23
+ * ADDED: Support OTEL_ATTRIBUTE_{COUNT,VALUE_LENGTH}_LIMIT env vars
24
+ * ADDED: Support InstrumentationScope, and update OTLP proto to 0.18.0
25
+ * FIXED: SpanLimits setting event attributes length limit
21
26
 
22
27
  ### v1.1.0 / 2022-05-26
23
28
 
24
- * BREAKING CHANGE: This requires upgrading both the SDK and Instrumentation gem in tandem
29
+ * BREAKING CHANGE: This requires upgrading both the SDK and Instrumentation gem in tandem
25
30
 
26
31
 
27
32
  ### v1.0.3 / 2022-05-02
28
33
 
29
34
  * ADDED: Truncate the strings in an array attribute value if length_limit is configured
30
- * FIXED: Update attribute length limit env var name to match spec
31
- * FIXED: Warning about Struct initialization in Ruby 3.2+
32
- * FIXED: Warn on unsupported otlp transport protocols
33
- * FIXED: Only allow certain types of Numeric values as attribute values.
35
+ * FIXED: Update attribute length limit env var name to match spec
36
+ * FIXED: Warning about Struct initialization in Ruby 3.2+
37
+ * FIXED: Warn on unsupported otlp transport protocols
38
+ * FIXED: Only allow certain types of Numeric values as attribute values.
34
39
 
35
40
  ### v1.0.2 / 2021-12-01
36
41
 
37
- * FIXED: Default span kind
38
- * FIXED: Use monotonic clock where possible
42
+ * FIXED: Default span kind
43
+ * FIXED: Use monotonic clock where possible
39
44
 
40
45
  ### v1.0.1 / 2021-10-29
41
46
 
@@ -100,10 +100,10 @@ module OpenTelemetry
100
100
  # @param [optional Numeric] timeout An optional timeout in seconds.
101
101
  # @return [Integer] SUCCESS if no error occurred, FAILURE if a
102
102
  # non-specific failure occurred, TIMEOUT if a timeout occurred.
103
- def force_flush(timeout: nil) # rubocop:disable Metrics/CyclomaticComplexity, Metrics/PerceivedComplexity, Metrics/MethodLength
103
+ def force_flush(timeout: nil) # rubocop:disable Metrics/MethodLength
104
104
  start_time = OpenTelemetry::Common::Utilities.timeout_timestamp
105
105
  snapshot = lock do
106
- reset_on_fork if @keep_running
106
+ reset_on_fork(restart_thread: @keep_running)
107
107
  spans.shift(spans.size)
108
108
  end
109
109
  until snapshot.empty?
@@ -347,8 +347,14 @@ module OpenTelemetry
347
347
  def trim_span_attributes(attrs)
348
348
  return if attrs.nil?
349
349
 
350
- excess = attrs.size - @span_limits.attribute_count_limit
351
- excess.times { attrs.shift } if excess.positive?
350
+ if attrs.size > @span_limits.attribute_count_limit
351
+ n = @span_limits.attribute_count_limit
352
+ attrs.delete_if do |_key, _value|
353
+ n -= 1
354
+ n.negative?
355
+ end
356
+ end
357
+
352
358
  truncate_attribute_values(attrs, @span_limits.attribute_length_limit)
353
359
  nil
354
360
  end
@@ -7,6 +7,6 @@
7
7
  module OpenTelemetry
8
8
  module SDK
9
9
  ## Current OpenTelemetry version
10
- VERSION = '1.3.0'
10
+ VERSION = '1.3.1'
11
11
  end
12
12
  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: 1.3.0
4
+ version: 1.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - OpenTelemetry Authors
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-06-13 00:00:00.000000000 Z
11
+ date: 2023-11-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: opentelemetry-api
@@ -294,10 +294,10 @@ homepage: https://github.com/open-telemetry/opentelemetry-ruby
294
294
  licenses:
295
295
  - Apache-2.0
296
296
  metadata:
297
- changelog_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-sdk/v1.3.0/file.CHANGELOG.html
297
+ changelog_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-sdk/v1.3.1/file.CHANGELOG.html
298
298
  source_code_uri: https://github.com/open-telemetry/opentelemetry-ruby/tree/main/sdk
299
299
  bug_tracker_uri: https://github.com/open-telemetry/opentelemetry-ruby/issues
300
- documentation_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-sdk/v1.3.0
300
+ documentation_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-sdk/v1.3.1
301
301
  post_install_message:
302
302
  rdoc_options: []
303
303
  require_paths: