opentelemetry-exporter-otlp 0.19.0 → 0.20.3

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bf50130d2b4ab1fb492992a5b468988d1bbb404847f94820e46bd73b3beb9a25
4
- data.tar.gz: dd4d624818f79259fe10c307e64441382d1e98e5304d89cf4ffac3d9290a42f2
3
+ metadata.gz: 1e089f8c7bd9d678bffa56801f7afc7391555bb7228827e5498b2ad2e492257a
4
+ data.tar.gz: 8af67808ba9a96ba76a240a307ca7f5028846e152df610644f80cfad532dc7b6
5
5
  SHA512:
6
- metadata.gz: e0f80a737f5afcde1670b73785043500eec3fbf7d6a37955485ed88b015a3d0dfef8ff52d4e6bc201b2b872bb3c2bf949edab618b4695296a139520486d1a546
7
- data.tar.gz: 3c22ed15af7b272db9e09444af4aeeeea8ffedb19ec5fe7f35813ea357347166c6fc045820c1feb030f3901aa0520c047f858ee017a55d0d9726921d9c17d3d8
6
+ metadata.gz: 389df119724c984aa0aa63961165df7ae9d66995b00ae814d4284bbc12712b1b86de469a4ea9f14ceeb2494473a821e2dafe9e608c3d70c53e5d26d56c940e14
7
+ data.tar.gz: 1ffbb9a7fe71519322242470d547e56e97cd94655f3bc762024006a8131b87236ee1ae2e61c3da7cf7f9a9161025443392df49c74f842693ab87cc17356535f1
data/CHANGELOG.md CHANGED
@@ -1,5 +1,24 @@
1
1
  # Release History: opentelemetry-exporter-otlp
2
2
 
3
+ ### v0.20.3 / 2021-08-19
4
+
5
+ * FIXED: OTLP exporter missing failure metrics
6
+
7
+ ### v0.20.2 / 2021-08-12
8
+
9
+ * FIXED: Add rescue for OpenSSL errors during export
10
+ * DOCS: Update docs to rely more on environment variable configuration
11
+
12
+ ### v0.20.1 / 2021-06-29
13
+
14
+ * FIXED: Otlp encoding exceptions again
15
+
16
+ ### v0.20.0 / 2021-06-23
17
+
18
+ * BREAKING CHANGE: Total order constraint on span.status=
19
+
20
+ * FIXED: Total order constraint on span.status=
21
+
3
22
  ### v0.19.0 / 2021-06-03
4
23
 
5
24
  * ADDED: Add a SSL verify mode option for the OTLP exporter
data/README.md CHANGED
@@ -35,16 +35,15 @@ Then, configure the SDK to use the OTLP exporter as a span processor, and use th
35
35
  require 'opentelemetry/sdk'
36
36
  require 'opentelemetry/exporter/otlp'
37
37
 
38
- # Configure the sdk with custom export
39
- OpenTelemetry::SDK.configure do |c|
40
- c.add_span_processor(
41
- OpenTelemetry::SDK::Trace::Export::BatchSpanProcessor.new(
42
- OpenTelemetry::Exporter::OTLP::Exporter.new(
43
- compression: 'gzip'
44
- )
45
- )
46
- )
47
- end
38
+ # The OTLP exporter is the default, so no configuration is needed.
39
+ # However, it could be manually selected via an environment variable if required:
40
+ #
41
+ # ENV['OTEL_TRACES_EXPORTER'] = 'otlp'
42
+ #
43
+ # You may also configure various settings via environment variables:
44
+ # ENV['OTEL_EXPORTER_OTLP_COMPRESSION'] = 'gzip'
45
+
46
+ OpenTelemetry::SDK.configure
48
47
 
49
48
  # To start a trace you need to get a Tracer from the TracerProvider
50
49
  tracer = OpenTelemetry.tracer_provider.tracer('my_app_or_gem', '0.1.0')
@@ -67,7 +66,7 @@ For additional examples, see the [examples on github][examples-github].
67
66
 
68
67
  ## How can I configure the OTLP exporter?
69
68
 
70
- The collector exporter can be configured explicitly in code, as shown above, or via environment variables. The configuration parameters, environment variables, and defaults are shown below.
69
+ The collector exporter can be configured explicitly in code, or via environment variables as shown above. The configuration parameters, environment variables, and defaults are shown below.
71
70
 
72
71
  | Parameter | Environment variable | Default |
73
72
  | ------------------- | -------------------------------------------- | ----------------------------------- |
@@ -187,6 +187,7 @@ module OpenTelemetry
187
187
  when Net::HTTPBadRequest, Net::HTTPClientError, Net::HTTPServerError
188
188
  # TODO: decode the body as a google.rpc.Status Protobuf-encoded message when https://github.com/open-telemetry/opentelemetry-collector/issues/1357 is fixed.
189
189
  response.body # Read and discard body
190
+ @metrics_reporter.add_to_counter('otel.otlp_exporter.failure', labels: { 'reason' => response.code })
190
191
  FAILURE
191
192
  when Net::HTTPRedirection
192
193
  @http.finish
@@ -199,6 +200,9 @@ module OpenTelemetry
199
200
  rescue Net::OpenTimeout, Net::ReadTimeout
200
201
  retry if backoff?(retry_count: retry_count += 1, reason: 'timeout')
201
202
  return FAILURE
203
+ rescue OpenSSL::SSL::SSLError
204
+ retry if backoff?(retry_count: retry_count += 1, reason: 'openssl_error')
205
+ return FAILURE
202
206
  rescue SocketError
203
207
  retry if backoff?(retry_count: retry_count += 1, reason: 'socket_error')
204
208
  return FAILURE
@@ -234,9 +238,8 @@ module OpenTelemetry
234
238
  end
235
239
 
236
240
  def backoff?(retry_after: nil, retry_count:, reason:)
237
- return false if retry_count > RETRY_COUNT
238
-
239
241
  @metrics_reporter.add_to_counter('otel.otlp_exporter.failure', labels: { 'reason' => reason })
242
+ return false if retry_count > RETRY_COUNT
240
243
 
241
244
  sleep_interval = nil
242
245
  unless retry_after.nil?
@@ -342,7 +345,8 @@ module OpenTelemetry
342
345
  def as_otlp_key_value(key, value)
343
346
  Opentelemetry::Proto::Common::V1::KeyValue.new(key: key, value: as_otlp_any_value(value))
344
347
  rescue Encoding::UndefinedConversionError => e
345
- OpenTelemetry.handle_error(exception: e, message: "encoding error for key #{key} and value #{value}")
348
+ encoded_value = value.encode('UTF-8', invalid: :replace, undef: :replace, replace: '�')
349
+ OpenTelemetry.handle_error(exception: e, message: "encoding error for key #{key} and value #{encoded_value}")
346
350
  Opentelemetry::Proto::Common::V1::KeyValue.new(key: key, value: as_otlp_any_value('Encoding Error'))
347
351
  end
348
352
 
@@ -8,7 +8,7 @@ module OpenTelemetry
8
8
  module Exporter
9
9
  module OTLP
10
10
  ## Current OpenTelemetry OTLP exporter version
11
- VERSION = '0.19.0'
11
+ VERSION = '0.20.3'
12
12
  end
13
13
  end
14
14
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: opentelemetry-exporter-otlp
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.19.0
4
+ version: 0.20.3
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-06-03 00:00:00.000000000 Z
11
+ date: 2021-08-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: google-protobuf
@@ -30,42 +30,42 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 1.0.0.rc1
33
+ version: 1.0.0.rc3
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: 1.0.0.rc1
40
+ version: 1.0.0.rc3
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: opentelemetry-common
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 0.18.0
47
+ version: 0.19.1
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 0.18.0
54
+ version: 0.19.1
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: opentelemetry-sdk
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: 1.0.0.rc1
61
+ version: 1.0.0.rc2
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: 1.0.0.rc1
68
+ version: 1.0.0.rc2
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: bundler
71
71
  requirement: !ruby/object:Gem::Requirement
@@ -215,10 +215,10 @@ homepage: https://github.com/open-telemetry/opentelemetry-ruby
215
215
  licenses:
216
216
  - Apache-2.0
217
217
  metadata:
218
- changelog_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-exporter-otlp/v0.19.0/file.CHANGELOG.html
218
+ changelog_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-exporter-otlp/v0.20.3/file.CHANGELOG.html
219
219
  source_code_uri: https://github.com/open-telemetry/opentelemetry-ruby/tree/main/exporter/otlp
220
220
  bug_tracker_uri: https://github.com/open-telemetry/opentelemetry-ruby/issues
221
- documentation_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-exporter-otlp/v0.19.0
221
+ documentation_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-exporter-otlp/v0.20.3
222
222
  post_install_message:
223
223
  rdoc_options: []
224
224
  require_paths: