opentelemetry-exporter-otlp 0.26.0 → 0.26.2

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: 6ea9c42597a6b63fe341e3003bee8ffbba2a6e3c5a74e3ddc4ff30ae41345b2e
4
- data.tar.gz: b1714933dff93b3e4403732872ac211a5c3562ff6dbed90c739e132e408a2c01
3
+ metadata.gz: f511b15fd3e7e4d1452f58f852d9e29c97bff2743b520c080b187c657801b1bc
4
+ data.tar.gz: 52b9151d21904c685e026a813323415ef6b2be589e208b3a2307ad22fe5bead0
5
5
  SHA512:
6
- metadata.gz: 63b1cdc9d52ca362f06546936a475cbdce954452833057dbf6797443d8a2d728fddc417cc5d8c3fb1a1c6c0dcc44315ca2484e921d1d80a9ed00b4541d87f53b
7
- data.tar.gz: d18de69cd1466058ff2af29e38a6015342acbb1baabd7eb7e8022f7ee715202fd8e271edcfd7fde510e0ea67c3fbf378e5428b1600e07d16c800f03f5d59ff39
6
+ metadata.gz: 5d7c6101418e338123fa98b097028e819a94297a45d5c693ddea11226f9e984026f5951ad74076453636fcb6aee478b57721287d5c6807f8caa112a66f2786ed
7
+ data.tar.gz: 17a6022b2146e6b94cbae099cf47b3e86bb825c1a49a6e77548febdef93ddded862fa1685a9601c22235cb2996493a1f68db49e8b1399684482ab2bb3cd06cfd
data/CHANGELOG.md CHANGED
@@ -1,5 +1,16 @@
1
1
  # Release History: opentelemetry-exporter-otlp
2
2
 
3
+ ### v0.26.2 / 2024-01-23
4
+
5
+ * FIXED: Align endpoint environment variable handling with spec
6
+ * FIXED: Require csv for ruby-3.4 compatibility
7
+ * FIXED: Add context to metrics reporting of buffer-full events
8
+
9
+ ### v0.26.1 / 2023-07-29
10
+
11
+ * FIXED: Regenerate v0.20.0 protos
12
+ * ADDED: Allow google-protobuf ~> 3.14
13
+
3
14
  ### v0.26.0 / 2023-06-13
4
15
 
5
16
  * ADDED: Use OTLP 0.20.0 protos
data/README.md CHANGED
@@ -16,15 +16,17 @@ Generally, *libraries* that produce telemetry data should avoid depending direct
16
16
 
17
17
  ### Supported protocol version
18
18
 
19
- This gem supports the [v0.4.0 release](https://github.com/open-telemetry/opentelemetry-proto/releases/tag/v0.4.0) of OTLP.
19
+ This gem supports the [v0.20.0 release][otel-proto-release] of OTLP.
20
20
 
21
21
  ## How do I get started?
22
22
 
23
23
  Install the gem using:
24
24
 
25
- ```
25
+ ```console
26
+
26
27
  gem install opentelemetry-sdk
27
28
  gem install opentelemetry-exporter-otlp
29
+
28
30
  ```
29
31
 
30
32
  Or, if you use [bundler][bundler-home], include `opentelemetry-sdk` in your `Gemfile`.
@@ -93,6 +95,48 @@ The OpenTelemetry Ruby gems are maintained by the OpenTelemetry-Ruby special int
93
95
 
94
96
  The `opentelemetry-exporter-otlp` gem is distributed under the Apache 2.0 license. See [LICENSE][license-github] for more information.
95
97
 
98
+ ## Working with Proto Definitions
99
+
100
+ The OTel community maintains a [repository with protobuf definitions][otel-proto-github] that language and collector implementors use to generate code.
101
+
102
+ 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
+
104
+ ### System Requirements
105
+
106
+ - [`git` 2.41+][git-install]
107
+ - [`protoc` 22.5][protoc-install]
108
+ - [Ruby 3+][ruby-downloads]
109
+
110
+ > :warning: `protoc 23.x` *changes the Ruby code generator to emit a serialized proto instead of a DSL.* <https://protobuf.dev/news/2023-04-20/>. Please ensure you use `protoc` version `22.x` in order to ensure we remain compatible with versions of protobuf prior to `google-protobuf` gem `3.18`.
111
+
112
+ ### Upgrade Proto Definitions
113
+
114
+ **Update the target otel-proto version in the `Rakefile` that matches a release `tag` in the proto repo, e.g.**
115
+
116
+ ```ruby
117
+ # Rakefile
118
+
119
+ # https://github.com/open-telemetry/opentelemetry-proto/tree/v0.20.0
120
+ PROTO_VERSION = `v0.20.0`
121
+ ```
122
+
123
+ **Generate the Ruby source files using `rake`:**
124
+
125
+ ```console
126
+
127
+ $> bundle exec rake protobuf:generate
128
+
129
+ ```
130
+
131
+ **Run tests and fix any errors:**
132
+
133
+ ```console
134
+
135
+ $> bundle exec rake test
136
+
137
+ ```
138
+
139
+ **Commit the chnages and open a PR!**
96
140
 
97
141
  [opentelemetry-collector-home]: https://opentelemetry.io/docs/collector/about/
98
142
  [opentelemetry-home]: https://opentelemetry.io
@@ -103,3 +147,8 @@ The `opentelemetry-exporter-otlp` gem is distributed under the Apache 2.0 licens
103
147
  [ruby-sig]: https://github.com/open-telemetry/community#ruby-sig
104
148
  [community-meetings]: https://github.com/open-telemetry/community#community-meetings
105
149
  [discussions-url]: https://github.com/open-telemetry/opentelemetry-ruby/discussions
150
+ [git-install]: https://git-scm.com/book/en/v2/Getting-Started-Installing-Git
151
+ [protoc-install]: https://github.com/protocolbuffers/protobuf/releases/tag/v22.5
152
+ [ruby-downloads]: https://www.ruby-lang.org/en/downloads/
153
+ [otel-proto-github]: https://github.com/open-telemetry/opentelemetry-proto
154
+ [otel-proto-release]: https://github.com/open-telemetry/opentelemetry-proto/releases/tag/v0.20.0
@@ -7,7 +7,6 @@
7
7
  require 'opentelemetry/common'
8
8
  require 'opentelemetry/sdk'
9
9
  require 'net/http'
10
- require 'csv'
11
10
  require 'zlib'
12
11
 
13
12
  require 'google/rpc/status_pb'
@@ -47,21 +46,16 @@ module OpenTelemetry
47
46
  end
48
47
  end
49
48
 
50
- def initialize(endpoint: OpenTelemetry::Common::Utilities.config_opt('OTEL_EXPORTER_OTLP_TRACES_ENDPOINT', 'OTEL_EXPORTER_OTLP_ENDPOINT', default: 'http://localhost:4318/v1/traces'),
49
+ def initialize(endpoint: nil,
51
50
  certificate_file: OpenTelemetry::Common::Utilities.config_opt('OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE', 'OTEL_EXPORTER_OTLP_CERTIFICATE'),
52
51
  ssl_verify_mode: Exporter.ssl_verify_mode,
53
52
  headers: OpenTelemetry::Common::Utilities.config_opt('OTEL_EXPORTER_OTLP_TRACES_HEADERS', 'OTEL_EXPORTER_OTLP_HEADERS', default: {}),
54
53
  compression: OpenTelemetry::Common::Utilities.config_opt('OTEL_EXPORTER_OTLP_TRACES_COMPRESSION', 'OTEL_EXPORTER_OTLP_COMPRESSION', default: 'gzip'),
55
54
  timeout: OpenTelemetry::Common::Utilities.config_opt('OTEL_EXPORTER_OTLP_TRACES_TIMEOUT', 'OTEL_EXPORTER_OTLP_TIMEOUT', default: 10),
56
55
  metrics_reporter: nil)
57
- raise ArgumentError, "invalid url for OTLP::Exporter #{endpoint}" unless OpenTelemetry::Common::Utilities.valid_url?(endpoint)
58
- raise ArgumentError, "unsupported compression key #{compression}" unless compression.nil? || %w[gzip none].include?(compression)
56
+ @uri = prepare_endpoint(endpoint)
59
57
 
60
- @uri = if endpoint == ENV['OTEL_EXPORTER_OTLP_ENDPOINT']
61
- URI.join(endpoint, 'v1/traces')
62
- else
63
- URI(endpoint)
64
- end
58
+ raise ArgumentError, "unsupported compression key #{compression}" unless compression.nil? || %w[gzip none].include?(compression)
65
59
 
66
60
  @http = http_connection(@uri, ssl_verify_mode, certificate_file)
67
61
 
@@ -172,8 +166,7 @@ module OpenTelemetry
172
166
  redo if backoff?(retry_count: retry_count += 1, reason: response.code)
173
167
  FAILURE
174
168
  when Net::HTTPNotFound
175
- OpenTelemetry.handle_error(message: "OTLP exporter received http.code=404 for uri: '#{@path}'")
176
- @metrics_reporter.add_to_counter('otel.otlp_exporter.failure', labels: { 'reason' => response.code })
169
+ log_request_failure(response.code)
177
170
  FAILURE
178
171
  when Net::HTTPBadRequest, Net::HTTPClientError, Net::HTTPServerError
179
172
  log_status(response.body)
@@ -185,6 +178,7 @@ module OpenTelemetry
185
178
  redo if backoff?(retry_after: 0, retry_count: retry_count += 1, reason: response.code)
186
179
  else
187
180
  @http.finish
181
+ log_request_failure(response.code)
188
182
  FAILURE
189
183
  end
190
184
  rescue Net::OpenTimeout, Net::ReadTimeout
@@ -227,11 +221,16 @@ module OpenTelemetry
227
221
  klass_or_nil = ::Google::Protobuf::DescriptorPool.generated_pool.lookup(detail.type_name).msgclass
228
222
  detail.unpack(klass_or_nil) if klass_or_nil
229
223
  end.compact
230
- OpenTelemetry.handle_error(message: "OTLP exporter received rpc.Status{message=#{status.message}, details=#{details}}")
224
+ OpenTelemetry.handle_error(message: "OTLP exporter received rpc.Status{message=#{status.message}, details=#{details}} for uri=#{@uri}")
231
225
  rescue StandardError => e
232
226
  OpenTelemetry.handle_error(exception: e, message: 'unexpected error decoding rpc.Status in OTLP::Exporter#log_status')
233
227
  end
234
228
 
229
+ def log_request_failure(response_code)
230
+ OpenTelemetry.handle_error(message: "OTLP exporter received http.code=#{response_code} for uri='#{@uri}' in OTLP::Exporter#send_bytes")
231
+ @metrics_reporter.add_to_counter('otel.otlp_exporter.failure', labels: { 'reason' => response_code })
232
+ end
233
+
235
234
  def measure_request_duration
236
235
  start = Process.clock_gettime(Process::CLOCK_MONOTONIC)
237
236
  begin
@@ -246,7 +245,7 @@ module OpenTelemetry
246
245
  end
247
246
 
248
247
  def backoff?(retry_count:, reason:, retry_after: nil) # rubocop:disable Metrics/CyclomaticComplexity, Metrics/MethodLength, Metrics/PerceivedComplexity
249
- @metrics_reporter.add_to_counter('otel.otlp_exporter.failure', labels: { 'reason' => reason })
248
+ log_request_failure(reason)
250
249
  return false if retry_count > RETRY_COUNT
251
250
 
252
251
  sleep_interval = nil
@@ -386,6 +385,21 @@ module OpenTelemetry
386
385
  result
387
386
  end
388
387
 
388
+ def prepare_endpoint(endpoint)
389
+ endpoint ||= ENV['OTEL_EXPORTER_OTLP_TRACES_ENDPOINT']
390
+ if endpoint.nil?
391
+ endpoint = ENV['OTEL_EXPORTER_OTLP_ENDPOINT'] || 'http://localhost:4318'
392
+ endpoint += '/' unless endpoint.end_with?('/')
393
+ URI.join(endpoint, 'v1/traces')
394
+ elsif endpoint.strip.empty?
395
+ raise ArgumentError, "invalid url for OTLP::Exporter #{endpoint}"
396
+ else
397
+ URI(endpoint)
398
+ end
399
+ rescue URI::InvalidURIError
400
+ raise ArgumentError, "invalid url for OTLP::Exporter #{endpoint}"
401
+ end
402
+
389
403
  def prepare_headers(config_headers)
390
404
  headers = case config_headers
391
405
  when String then parse_headers(config_headers)
@@ -8,7 +8,7 @@ module OpenTelemetry
8
8
  module Exporter
9
9
  module OTLP
10
10
  ## Current OpenTelemetry OTLP exporter version
11
- VERSION = '0.26.0'
11
+ VERSION = '0.26.2'
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.26.0
4
+ version: 0.26.2
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-14 00:00:00.000000000 Z
11
+ date: 2024-01-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: googleapis-common-protos-types
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '3.19'
33
+ version: '3.14'
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: '3.19'
40
+ version: '3.14'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: opentelemetry-api
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -94,6 +94,20 @@ dependencies:
94
94
  - - ">="
95
95
  - !ruby/object:Gem::Version
96
96
  version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: appraisal
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: 2.2.0
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: 2.2.0
97
111
  - !ruby/object:Gem::Dependency
98
112
  name: bundler
99
113
  requirement: !ruby/object:Gem::Requirement
@@ -264,25 +278,21 @@ files:
264
278
  - lib/opentelemetry/exporter/otlp/exporter.rb
265
279
  - lib/opentelemetry/exporter/otlp/version.rb
266
280
  - lib/opentelemetry/proto/collector/logs/v1/logs_service_pb.rb
267
- - lib/opentelemetry/proto/collector/logs/v1/logs_service_services_pb.rb
268
281
  - lib/opentelemetry/proto/collector/metrics/v1/metrics_service_pb.rb
269
- - lib/opentelemetry/proto/collector/metrics/v1/metrics_service_services_pb.rb
270
282
  - lib/opentelemetry/proto/collector/trace/v1/trace_service_pb.rb
271
- - lib/opentelemetry/proto/collector/trace/v1/trace_service_services_pb.rb
272
283
  - lib/opentelemetry/proto/common/v1/common_pb.rb
273
284
  - lib/opentelemetry/proto/logs/v1/logs_pb.rb
274
285
  - lib/opentelemetry/proto/metrics/v1/metrics_pb.rb
275
286
  - lib/opentelemetry/proto/resource/v1/resource_pb.rb
276
- - lib/opentelemetry/proto/trace/v1/trace_config_pb.rb
277
287
  - lib/opentelemetry/proto/trace/v1/trace_pb.rb
278
288
  homepage: https://github.com/open-telemetry/opentelemetry-ruby
279
289
  licenses:
280
290
  - Apache-2.0
281
291
  metadata:
282
- changelog_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-exporter-otlp/v0.26.0/file.CHANGELOG.html
292
+ changelog_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-exporter-otlp/v0.26.2/file.CHANGELOG.html
283
293
  source_code_uri: https://github.com/open-telemetry/opentelemetry-ruby/tree/main/exporter/otlp
284
294
  bug_tracker_uri: https://github.com/open-telemetry/opentelemetry-ruby/issues
285
- documentation_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-exporter-otlp/v0.26.0
295
+ documentation_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-exporter-otlp/v0.26.2
286
296
  post_install_message:
287
297
  rdoc_options: []
288
298
  require_paths:
@@ -1,50 +0,0 @@
1
- # Generated by the protocol buffer compiler. DO NOT EDIT!
2
- # Source: opentelemetry/proto/collector/logs/v1/logs_service.proto for package 'opentelemetry.proto.collector.logs.v1'
3
- # Original file comments:
4
- # Copyright 2020, OpenTelemetry Authors
5
- #
6
- # Licensed under the Apache License, Version 2.0 (the "License");
7
- # you may not use this file except in compliance with the License.
8
- # You may obtain a copy of the License at
9
- #
10
- # http://www.apache.org/licenses/LICENSE-2.0
11
- #
12
- # Unless required by applicable law or agreed to in writing, software
13
- # distributed under the License is distributed on an "AS IS" BASIS,
14
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- # See the License for the specific language governing permissions and
16
- # limitations under the License.
17
- #
18
-
19
- require 'grpc'
20
- require 'opentelemetry/proto/collector/logs/v1/logs_service_pb'
21
-
22
- module Opentelemetry
23
- module Proto
24
- module Collector
25
- module Logs
26
- module V1
27
- module LogsService
28
- # Service that can be used to push logs between one Application instrumented with
29
- # OpenTelemetry and an collector, or between an collector and a central collector (in this
30
- # case logs are sent/received to/from multiple Applications).
31
- class Service
32
-
33
- include ::GRPC::GenericService
34
-
35
- self.marshal_class_method = :encode
36
- self.unmarshal_class_method = :decode
37
- self.service_name = 'opentelemetry.proto.collector.logs.v1.LogsService'
38
-
39
- # For performance reasons, it is recommended to keep this RPC
40
- # alive for the entire life of the application.
41
- rpc :Export, ::Opentelemetry::Proto::Collector::Logs::V1::ExportLogsServiceRequest, ::Opentelemetry::Proto::Collector::Logs::V1::ExportLogsServiceResponse
42
- end
43
-
44
- Stub = Service.rpc_stub_class
45
- end
46
- end
47
- end
48
- end
49
- end
50
- end
@@ -1,50 +0,0 @@
1
- # Generated by the protocol buffer compiler. DO NOT EDIT!
2
- # Source: opentelemetry/proto/collector/metrics/v1/metrics_service.proto for package 'opentelemetry.proto.collector.metrics.v1'
3
- # Original file comments:
4
- # Copyright 2019, OpenTelemetry Authors
5
- #
6
- # Licensed under the Apache License, Version 2.0 (the "License");
7
- # you may not use this file except in compliance with the License.
8
- # You may obtain a copy of the License at
9
- #
10
- # http://www.apache.org/licenses/LICENSE-2.0
11
- #
12
- # Unless required by applicable law or agreed to in writing, software
13
- # distributed under the License is distributed on an "AS IS" BASIS,
14
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- # See the License for the specific language governing permissions and
16
- # limitations under the License.
17
- #
18
-
19
- require 'grpc'
20
- require 'opentelemetry/proto/collector/metrics/v1/metrics_service_pb'
21
-
22
- module Opentelemetry
23
- module Proto
24
- module Collector
25
- module Metrics
26
- module V1
27
- module MetricsService
28
- # Service that can be used to push metrics between one Application
29
- # instrumented with OpenTelemetry and a collector, or between a collector and a
30
- # central collector.
31
- class Service
32
-
33
- include ::GRPC::GenericService
34
-
35
- self.marshal_class_method = :encode
36
- self.unmarshal_class_method = :decode
37
- self.service_name = 'opentelemetry.proto.collector.metrics.v1.MetricsService'
38
-
39
- # For performance reasons, it is recommended to keep this RPC
40
- # alive for the entire life of the application.
41
- rpc :Export, ::Opentelemetry::Proto::Collector::Metrics::V1::ExportMetricsServiceRequest, ::Opentelemetry::Proto::Collector::Metrics::V1::ExportMetricsServiceResponse
42
- end
43
-
44
- Stub = Service.rpc_stub_class
45
- end
46
- end
47
- end
48
- end
49
- end
50
- end
@@ -1,50 +0,0 @@
1
- # Generated by the protocol buffer compiler. DO NOT EDIT!
2
- # Source: opentelemetry/proto/collector/trace/v1/trace_service.proto for package 'opentelemetry.proto.collector.trace.v1'
3
- # Original file comments:
4
- # Copyright 2019, OpenTelemetry Authors
5
- #
6
- # Licensed under the Apache License, Version 2.0 (the "License");
7
- # you may not use this file except in compliance with the License.
8
- # You may obtain a copy of the License at
9
- #
10
- # http://www.apache.org/licenses/LICENSE-2.0
11
- #
12
- # Unless required by applicable law or agreed to in writing, software
13
- # distributed under the License is distributed on an "AS IS" BASIS,
14
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- # See the License for the specific language governing permissions and
16
- # limitations under the License.
17
- #
18
-
19
- require 'grpc'
20
- require 'opentelemetry/proto/collector/trace/v1/trace_service_pb'
21
-
22
- module Opentelemetry
23
- module Proto
24
- module Collector
25
- module Trace
26
- module V1
27
- module TraceService
28
- # Service that can be used to push spans between one Application instrumented with
29
- # OpenTelemetry and a collector, or between a collector and a central collector (in this
30
- # case spans are sent/received to/from multiple Applications).
31
- class Service
32
-
33
- include ::GRPC::GenericService
34
-
35
- self.marshal_class_method = :encode
36
- self.unmarshal_class_method = :decode
37
- self.service_name = 'opentelemetry.proto.collector.trace.v1.TraceService'
38
-
39
- # For performance reasons, it is recommended to keep this RPC
40
- # alive for the entire life of the application.
41
- rpc :Export, ::Opentelemetry::Proto::Collector::Trace::V1::ExportTraceServiceRequest, ::Opentelemetry::Proto::Collector::Trace::V1::ExportTraceServiceResponse
42
- end
43
-
44
- Stub = Service.rpc_stub_class
45
- end
46
- end
47
- end
48
- end
49
- end
50
- end
@@ -1,49 +0,0 @@
1
- # Generated by the protocol buffer compiler. DO NOT EDIT!
2
- # source: opentelemetry/proto/trace/v1/trace_config.proto
3
-
4
- require 'google/protobuf'
5
-
6
- Google::Protobuf::DescriptorPool.generated_pool.build do
7
- add_file("opentelemetry/proto/trace/v1/trace_config.proto", :syntax => :proto3) do
8
- add_message "opentelemetry.proto.trace.v1.TraceConfig" do
9
- optional :max_number_of_attributes, :int64, 4
10
- optional :max_number_of_timed_events, :int64, 5
11
- optional :max_number_of_attributes_per_timed_event, :int64, 6
12
- optional :max_number_of_links, :int64, 7
13
- optional :max_number_of_attributes_per_link, :int64, 8
14
- oneof :sampler do
15
- optional :constant_sampler, :message, 1, "opentelemetry.proto.trace.v1.ConstantSampler"
16
- optional :trace_id_ratio_based, :message, 2, "opentelemetry.proto.trace.v1.TraceIdRatioBased"
17
- optional :rate_limiting_sampler, :message, 3, "opentelemetry.proto.trace.v1.RateLimitingSampler"
18
- end
19
- end
20
- add_message "opentelemetry.proto.trace.v1.ConstantSampler" do
21
- optional :decision, :enum, 1, "opentelemetry.proto.trace.v1.ConstantSampler.ConstantDecision"
22
- end
23
- add_enum "opentelemetry.proto.trace.v1.ConstantSampler.ConstantDecision" do
24
- value :ALWAYS_OFF, 0
25
- value :ALWAYS_ON, 1
26
- value :ALWAYS_PARENT, 2
27
- end
28
- add_message "opentelemetry.proto.trace.v1.TraceIdRatioBased" do
29
- optional :samplingRatio, :double, 1
30
- end
31
- add_message "opentelemetry.proto.trace.v1.RateLimitingSampler" do
32
- optional :qps, :int64, 1
33
- end
34
- end
35
- end
36
-
37
- module Opentelemetry
38
- module Proto
39
- module Trace
40
- module V1
41
- TraceConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.TraceConfig").msgclass
42
- ConstantSampler = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.ConstantSampler").msgclass
43
- ConstantSampler::ConstantDecision = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.ConstantSampler.ConstantDecision").enummodule
44
- TraceIdRatioBased = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.TraceIdRatioBased").msgclass
45
- RateLimitingSampler = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.RateLimitingSampler").msgclass
46
- end
47
- end
48
- end
49
- end