opentelemetry-exporter-otlp 0.19.0 → 0.20.3

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: 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: