opentelemetry-exporter-otlp 0.28.1 → 0.29.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +8 -0
- data/README.md +13 -11
- data/lib/opentelemetry/exporter/otlp/exporter.rb +9 -6
- data/lib/opentelemetry/exporter/otlp/version.rb +1 -1
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b920e9035eacd3b8ad78cdf84ab162787777f048283005a7d0e31a8d5ac92ddc
|
4
|
+
data.tar.gz: 6bca5054f99ffa9ce07483e7e41df0041da91a7ebce13ee82afc0eaa7cecc56b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8f5640e1d7bf493d5c27ae4a3aa513497d626d93351c1b5ee6c078f6bd04b3ebd619b121024791633c49f8c12701e3893d2ca441ced1886e6a4b1194072ef680
|
7
|
+
data.tar.gz: 6e80591be22d7d783f86c52b37614823233c8245c51e43ef245ae9ca2950335537c9fe6d5413373ae25f35d434d71f9e00545dfd0033c5cf1db3c4dc9930a1d3
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,13 @@
|
|
1
1
|
# Release History: opentelemetry-exporter-otlp
|
2
2
|
|
3
|
+
### v0.29.1 / 2024-12-04
|
4
|
+
|
5
|
+
* FIXED: Remove WRITE_TIMEOUT_SUPPORTED
|
6
|
+
|
7
|
+
### v0.29.0 / 2024-08-27
|
8
|
+
|
9
|
+
* ADDED: Add support for mutual TLS.
|
10
|
+
|
3
11
|
### v0.28.1 / 2024-07-24
|
4
12
|
|
5
13
|
* ADDED: Improve SSL error logging.
|
data/README.md
CHANGED
@@ -73,15 +73,17 @@ For additional examples, see the [examples on github][examples-github].
|
|
73
73
|
|
74
74
|
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.
|
75
75
|
|
76
|
-
| Parameter
|
77
|
-
|
78
|
-
| `endpoint:`
|
79
|
-
| `certificate_file
|
80
|
-
| `
|
81
|
-
| `
|
82
|
-
| `
|
83
|
-
| `
|
84
|
-
|
|
76
|
+
| Parameter | Environment variable | Default |
|
77
|
+
|---------------------------| -------------------------------------------- | ----------------------------------- |
|
78
|
+
| `endpoint:` | `OTEL_EXPORTER_OTLP_ENDPOINT` | `"http://localhost:4318/v1/traces"` |
|
79
|
+
| `certificate_file:` | `OTEL_EXPORTER_OTLP_CERTIFICATE` | |
|
80
|
+
| `client_certificate_file` | `OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE` | |
|
81
|
+
| `client_key_file` | `OTEL_EXPORTER_OTLP_CLIENT_KEY` | |
|
82
|
+
| `headers:` | `OTEL_EXPORTER_OTLP_HEADERS` | |
|
83
|
+
| `compression:` | `OTEL_EXPORTER_OTLP_COMPRESSION` | `"gzip"` |
|
84
|
+
| `timeout:` | `OTEL_EXPORTER_OTLP_TIMEOUT` | `10` |
|
85
|
+
| `ssl_verify_mode:` | `OTEL_RUBY_EXPORTER_OTLP_SSL_VERIFY_PEER` or | `OpenSSL::SSL:VERIFY_PEER` |
|
86
|
+
| | `OTEL_RUBY_EXPORTER_OTLP_SSL_VERIFY_NONE` | |
|
85
87
|
|
86
88
|
`ssl_verify_mode:` parameter values should be flags for server certificate verification: `OpenSSL::SSL:VERIFY_PEER` and `OpenSSL::SSL:VERIFY_NONE` are acceptable. These values can also be set using the appropriately named environment variables as shown where `VERIFY_PEER` will take precedence over `VERIFY_NONE`. Please see [the Net::HTTP docs](https://ruby-doc.org/stdlib-2.7.6/libdoc/net/http/rdoc/Net/HTTP.html#verify_mode) for more information about these flags.
|
87
89
|
|
@@ -97,7 +99,7 @@ The `opentelemetry-exporter-otlp` gem is distributed under the Apache 2.0 licens
|
|
97
99
|
|
98
100
|
## Working with Proto Definitions
|
99
101
|
|
100
|
-
The OTel community maintains a [repository with protobuf definitions][otel-proto-github] that language and collector
|
102
|
+
The OTel community maintains a [repository with protobuf definitions][otel-proto-github] that language and collector implementers use to generate code.
|
101
103
|
|
102
104
|
Maintainers are expected to keep up to date with the latest version of protos. This guide will provide you with step-by-step instructions on updating the OTLP Exporter gem with the latest definitions.
|
103
105
|
|
@@ -136,7 +138,7 @@ $> bundle exec rake test
|
|
136
138
|
|
137
139
|
```
|
138
140
|
|
139
|
-
**Commit the
|
141
|
+
**Commit the changes and open a PR!**
|
140
142
|
|
141
143
|
[opentelemetry-collector-home]: https://opentelemetry.io/docs/collector/about/
|
142
144
|
[opentelemetry-home]: https://opentelemetry.io
|
@@ -28,8 +28,7 @@ module OpenTelemetry
|
|
28
28
|
# Default timeouts in seconds.
|
29
29
|
KEEP_ALIVE_TIMEOUT = 30
|
30
30
|
RETRY_COUNT = 5
|
31
|
-
|
32
|
-
private_constant(:KEEP_ALIVE_TIMEOUT, :RETRY_COUNT, :WRITE_TIMEOUT_SUPPORTED)
|
31
|
+
private_constant(:KEEP_ALIVE_TIMEOUT, :RETRY_COUNT)
|
33
32
|
|
34
33
|
ERROR_MESSAGE_INVALID_HEADERS = 'headers must be a String with comma-separated URL Encoded UTF-8 k=v pairs or a Hash'
|
35
34
|
private_constant(:ERROR_MESSAGE_INVALID_HEADERS)
|
@@ -48,6 +47,8 @@ module OpenTelemetry
|
|
48
47
|
|
49
48
|
def initialize(endpoint: nil,
|
50
49
|
certificate_file: OpenTelemetry::Common::Utilities.config_opt('OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE', 'OTEL_EXPORTER_OTLP_CERTIFICATE'),
|
50
|
+
client_certificate_file: OpenTelemetry::Common::Utilities.config_opt('OTEL_EXPORTER_OTLP_TRACES_CLIENT_CERTIFICATE', 'OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE'),
|
51
|
+
client_key_file: OpenTelemetry::Common::Utilities.config_opt('OTEL_EXPORTER_OTLP_TRACES_CLIENT_KEY', 'OTEL_EXPORTER_OTLP_CLIENT_KEY'),
|
51
52
|
ssl_verify_mode: Exporter.ssl_verify_mode,
|
52
53
|
headers: OpenTelemetry::Common::Utilities.config_opt('OTEL_EXPORTER_OTLP_TRACES_HEADERS', 'OTEL_EXPORTER_OTLP_HEADERS', default: {}),
|
53
54
|
compression: OpenTelemetry::Common::Utilities.config_opt('OTEL_EXPORTER_OTLP_TRACES_COMPRESSION', 'OTEL_EXPORTER_OTLP_COMPRESSION', default: 'gzip'),
|
@@ -57,7 +58,7 @@ module OpenTelemetry
|
|
57
58
|
|
58
59
|
raise ArgumentError, "unsupported compression key #{compression}" unless compression.nil? || %w[gzip none].include?(compression)
|
59
60
|
|
60
|
-
@http = http_connection(@uri, ssl_verify_mode, certificate_file)
|
61
|
+
@http = http_connection(@uri, ssl_verify_mode, certificate_file, client_certificate_file, client_key_file)
|
61
62
|
|
62
63
|
@path = @uri.path
|
63
64
|
@headers = prepare_headers(headers)
|
@@ -102,11 +103,13 @@ module OpenTelemetry
|
|
102
103
|
|
103
104
|
private
|
104
105
|
|
105
|
-
def http_connection(uri, ssl_verify_mode, certificate_file)
|
106
|
+
def http_connection(uri, ssl_verify_mode, certificate_file, client_certificate_file, client_key_file)
|
106
107
|
http = Net::HTTP.new(uri.host, uri.port)
|
107
108
|
http.use_ssl = uri.scheme == 'https'
|
108
109
|
http.verify_mode = ssl_verify_mode
|
109
110
|
http.ca_file = certificate_file unless certificate_file.nil?
|
111
|
+
http.cert = OpenSSL::X509::Certificate.new(File.read(client_certificate_file)) unless client_certificate_file.nil?
|
112
|
+
http.key = OpenSSL::PKey::RSA.new(File.read(client_key_file)) unless client_key_file.nil?
|
110
113
|
http.keep_alive_timeout = KEEP_ALIVE_TIMEOUT
|
111
114
|
http
|
112
115
|
end
|
@@ -149,7 +152,7 @@ module OpenTelemetry
|
|
149
152
|
|
150
153
|
@http.open_timeout = remaining_timeout
|
151
154
|
@http.read_timeout = remaining_timeout
|
152
|
-
@http.write_timeout = remaining_timeout
|
155
|
+
@http.write_timeout = remaining_timeout
|
153
156
|
@http.start unless @http.started?
|
154
157
|
response = measure_request_duration { @http.request(request) }
|
155
158
|
|
@@ -209,7 +212,7 @@ module OpenTelemetry
|
|
209
212
|
# Reset timeouts to defaults for the next call.
|
210
213
|
@http.open_timeout = @timeout
|
211
214
|
@http.read_timeout = @timeout
|
212
|
-
@http.write_timeout = @timeout
|
215
|
+
@http.write_timeout = @timeout
|
213
216
|
end
|
214
217
|
|
215
218
|
def handle_redirect(location)
|
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.
|
4
|
+
version: 0.29.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: 2024-
|
11
|
+
date: 2024-12-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: googleapis-common-protos-types
|
@@ -198,14 +198,14 @@ dependencies:
|
|
198
198
|
requirements:
|
199
199
|
- - "~>"
|
200
200
|
- !ruby/object:Gem::Version
|
201
|
-
version: '1.
|
201
|
+
version: '1.65'
|
202
202
|
type: :development
|
203
203
|
prerelease: false
|
204
204
|
version_requirements: !ruby/object:Gem::Requirement
|
205
205
|
requirements:
|
206
206
|
- - "~>"
|
207
207
|
- !ruby/object:Gem::Version
|
208
|
-
version: '1.
|
208
|
+
version: '1.65'
|
209
209
|
- !ruby/object:Gem::Dependency
|
210
210
|
name: simplecov
|
211
211
|
requirement: !ruby/object:Gem::Requirement
|
@@ -289,10 +289,10 @@ homepage: https://github.com/open-telemetry/opentelemetry-ruby
|
|
289
289
|
licenses:
|
290
290
|
- Apache-2.0
|
291
291
|
metadata:
|
292
|
-
changelog_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-exporter-otlp/v0.
|
292
|
+
changelog_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-exporter-otlp/v0.29.1/file.CHANGELOG.html
|
293
293
|
source_code_uri: https://github.com/open-telemetry/opentelemetry-ruby/tree/main/exporter/otlp
|
294
294
|
bug_tracker_uri: https://github.com/open-telemetry/opentelemetry-ruby/issues
|
295
|
-
documentation_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-exporter-otlp/v0.
|
295
|
+
documentation_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-exporter-otlp/v0.29.1
|
296
296
|
post_install_message:
|
297
297
|
rdoc_options: []
|
298
298
|
require_paths:
|