From d30502254793680af275d3a8dfe39bcde1cc6554 Mon Sep 17 00:00:00 2001 From: Anders Chen Date: Sun, 12 Oct 2025 16:10:12 +0400 Subject: [PATCH 01/13] Fix issue with sending traces to IPv6 endpoints --- .../exporter/otlp/http/trace_exporter.rb | 2 +- .../exporter/otlp/logs/logs_exporter.rb | 2 +- .../exporter/otlp/metrics/util.rb | 2 +- .../opentelemetry/exporter/otlp/exporter.rb | 2 +- .../exporter/otlp/exporter_test.rb | 142 ++++++++++++++++++ 5 files changed, 146 insertions(+), 4 deletions(-) diff --git a/exporter/otlp-http/lib/opentelemetry/exporter/otlp/http/trace_exporter.rb b/exporter/otlp-http/lib/opentelemetry/exporter/otlp/http/trace_exporter.rb index f6f0ecd98e..c9744ed354 100644 --- a/exporter/otlp-http/lib/opentelemetry/exporter/otlp/http/trace_exporter.rb +++ b/exporter/otlp-http/lib/opentelemetry/exporter/otlp/http/trace_exporter.rb @@ -109,7 +109,7 @@ def fetch_ssl_verify_mode end def http_connection(uri, ssl_verify_mode, certificate_file, client_certificate_file, client_key_file) - http = Net::HTTP.new(uri.host, uri.port) + http = Net::HTTP.new(uri.hostname, uri.port) http.use_ssl = uri.scheme == 'https' http.verify_mode = ssl_verify_mode http.ca_file = certificate_file unless certificate_file.nil? diff --git a/exporter/otlp-logs/lib/opentelemetry/exporter/otlp/logs/logs_exporter.rb b/exporter/otlp-logs/lib/opentelemetry/exporter/otlp/logs/logs_exporter.rb index 9a53f69357..95124b58db 100644 --- a/exporter/otlp-logs/lib/opentelemetry/exporter/otlp/logs/logs_exporter.rb +++ b/exporter/otlp-logs/lib/opentelemetry/exporter/otlp/logs/logs_exporter.rb @@ -115,7 +115,7 @@ def handle_http_error(response) end def http_connection(uri, ssl_verify_mode, certificate_file, client_certificate_file, client_key_file) - http = Net::HTTP.new(uri.host, uri.port) + http = Net::HTTP.new(uri.hostname, uri.port) http.use_ssl = uri.scheme == 'https' http.verify_mode = ssl_verify_mode http.ca_file = certificate_file unless certificate_file.nil? diff --git a/exporter/otlp-metrics/lib/opentelemetry/exporter/otlp/metrics/util.rb b/exporter/otlp-metrics/lib/opentelemetry/exporter/otlp/metrics/util.rb index 14e0e395c2..38cdc99c5b 100644 --- a/exporter/otlp-metrics/lib/opentelemetry/exporter/otlp/metrics/util.rb +++ b/exporter/otlp-metrics/lib/opentelemetry/exporter/otlp/metrics/util.rb @@ -16,7 +16,7 @@ module Util # rubocop:disable Metrics/ModuleLength DEFAULT_USER_AGENT = "OTel-OTLP-MetricsExporter-Ruby/#{OpenTelemetry::Exporter::OTLP::Metrics::VERSION} Ruby/#{RUBY_VERSION} (#{RUBY_PLATFORM}; #{RUBY_ENGINE}/#{RUBY_ENGINE_VERSION})".freeze def http_connection(uri, ssl_verify_mode, certificate_file, client_certificate_file, client_key_file) - http = Net::HTTP.new(uri.host, uri.port) + http = Net::HTTP.new(uri.hostname, uri.port) http.use_ssl = uri.scheme == 'https' http.verify_mode = ssl_verify_mode http.ca_file = certificate_file unless certificate_file.nil? diff --git a/exporter/otlp/lib/opentelemetry/exporter/otlp/exporter.rb b/exporter/otlp/lib/opentelemetry/exporter/otlp/exporter.rb index 603c95142e..6a42ba8b64 100644 --- a/exporter/otlp/lib/opentelemetry/exporter/otlp/exporter.rb +++ b/exporter/otlp/lib/opentelemetry/exporter/otlp/exporter.rb @@ -124,7 +124,7 @@ def build_span_flags(parent_span_is_remote, base_flags) end def http_connection(uri, ssl_verify_mode, certificate_file, client_certificate_file, client_key_file) - http = Net::HTTP.new(uri.host, uri.port) + http = Net::HTTP.new(uri.hostname, uri.port) http.use_ssl = uri.scheme == 'https' http.verify_mode = ssl_verify_mode http.ca_file = certificate_file unless certificate_file.nil? diff --git a/exporter/otlp/test/opentelemetry/exporter/otlp/exporter_test.rb b/exporter/otlp/test/opentelemetry/exporter/otlp/exporter_test.rb index 66328ff442..5e7dfb2ca2 100644 --- a/exporter/otlp/test/opentelemetry/exporter/otlp/exporter_test.rb +++ b/exporter/otlp/test/opentelemetry/exporter/otlp/exporter_test.rb @@ -357,6 +357,148 @@ end end + describe 'IPv4/IPv6 compatibility' do + it 'handles IPv6 loopback address with brackets' do + exp = OpenTelemetry::Exporter::OTLP::Exporter.new(endpoint: 'http://[::1]:4318/v1/traces') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '::1' + _(http.port).must_equal 4318 + _(exp.instance_variable_get(:@path)).must_equal '/v1/traces' + end + + it 'handles IPv6 full address with brackets' do + exp = OpenTelemetry::Exporter::OTLP::Exporter.new(endpoint: 'http://[2001:db8::1]:4318/v1/traces') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '2001:db8::1' + _(http.port).must_equal 4318 + end + + it 'handles IPv6 address with https' do + exp = OpenTelemetry::Exporter::OTLP::Exporter.new(endpoint: 'https://[::1]:4318/v1/traces') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '::1' + _(http.port).must_equal 4318 + _(http.use_ssl?).must_equal true + end + + it 'handles IPv6 address with custom path' do + exp = OpenTelemetry::Exporter::OTLP::Exporter.new(endpoint: 'http://[::1]:8080/custom/path') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '::1' + _(http.port).must_equal 8080 + _(exp.instance_variable_get(:@path)).must_equal '/custom/path' + end + + it 'handles IPv4 loopback address' do + exp = OpenTelemetry::Exporter::OTLP::Exporter.new(endpoint: 'http://127.0.0.1:4318/v1/traces') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '127.0.0.1' + _(http.port).must_equal 4318 + _(exp.instance_variable_get(:@path)).must_equal '/v1/traces' + end + + it 'handles IPv4 address with custom port' do + exp = OpenTelemetry::Exporter::OTLP::Exporter.new(endpoint: 'http://192.168.1.100:8080/v1/traces') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '192.168.1.100' + _(http.port).must_equal 8080 + end + + it 'handles IPv4 address with https' do + exp = OpenTelemetry::Exporter::OTLP::Exporter.new(endpoint: 'https://10.0.0.1:4318/v1/traces') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '10.0.0.1' + _(http.port).must_equal 4318 + _(http.use_ssl?).must_equal true + end + + it 'handles IPv4 address with custom path' do + exp = OpenTelemetry::Exporter::OTLP::Exporter.new(endpoint: 'http://127.0.0.1:9090/custom/path') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '127.0.0.1' + _(http.port).must_equal 9090 + _(exp.instance_variable_get(:@path)).must_equal '/custom/path' + end + + it 'handles IPv4 address from environment variable' do + exp = OpenTelemetry::TestHelpers.with_env('OTEL_EXPORTER_OTLP_ENDPOINT' => 'http://192.168.1.1:4318') do + OpenTelemetry::Exporter::OTLP::Exporter.new + end + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '192.168.1.1' + _(http.port).must_equal 4318 + _(exp.instance_variable_get(:@path)).must_equal '/v1/traces' + end + + it 'handles hostnames' do + exp = OpenTelemetry::Exporter::OTLP::Exporter.new(endpoint: 'http://localhost:4318/v1/traces') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal 'localhost' + _(http.port).must_equal 4318 + end + + it 'handles fully qualified domain names' do + exp = OpenTelemetry::Exporter::OTLP::Exporter.new(endpoint: 'http://otel.example.com:4318/v1/traces') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal 'otel.example.com' + _(http.port).must_equal 4318 + end + + it 'handles hostnames with https' do + exp = OpenTelemetry::Exporter::OTLP::Exporter.new(endpoint: 'https://otel-collector.prod.example.com:443/v1/traces') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal 'otel-collector.prod.example.com' + _(http.port).must_equal 443 + _(http.use_ssl?).must_equal true + end + + it 'handles IPv6 address from environment variable' do + exp = OpenTelemetry::TestHelpers.with_env('OTEL_EXPORTER_OTLP_ENDPOINT' => 'http://[::1]:4318') do + OpenTelemetry::Exporter::OTLP::Exporter.new + end + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '::1' + _(http.port).must_equal 4318 + _(exp.instance_variable_get(:@path)).must_equal '/v1/traces' + end + + it 'exports span data with IPv6 address' do + stub_request(:post, 'http://[::1]:4318/v1/traces').to_return(status: 200) + exp = OpenTelemetry::Exporter::OTLP::Exporter.new(endpoint: 'http://[::1]:4318/v1/traces') + span_data = OpenTelemetry::TestHelpers.create_span_data + result = exp.export([span_data]) + _(result).must_equal(SUCCESS) + end + + it 'exports span data with IPv4 address' do + stub_request(:post, 'http://127.0.0.1:4318/v1/traces').to_return(status: 200) + exp = OpenTelemetry::Exporter::OTLP::Exporter.new(endpoint: 'http://127.0.0.1:4318/v1/traces') + span_data = OpenTelemetry::TestHelpers.create_span_data + result = exp.export([span_data]) + _(result).must_equal(SUCCESS) + end + + it 'exports span data with IPv6 address via full URL' do + stub_request(:post, 'http://[2001:db8::8a2e:370:7334]:4318/v1/traces').to_return(status: 200) + exp = OpenTelemetry::Exporter::OTLP::Exporter.new(endpoint: 'http://[2001:db8::8a2e:370:7334]:4318/v1/traces') + span_data = OpenTelemetry::TestHelpers.create_span_data + result = exp.export([span_data]) + _(result).must_equal(SUCCESS) + end + + it 'handles connection errors with IPv6 address gracefully' do + stub_request(:post, 'http://[::1]:4318/v1/traces').to_raise(SocketError.new('getaddrinfo: nodename nor servname provided, or not known')) + exp = OpenTelemetry::Exporter::OTLP::Exporter.new(endpoint: 'http://[::1]:4318/v1/traces') + span_data = OpenTelemetry::TestHelpers.create_span_data + + # Mock backoff to prevent retries + exp.stub(:backoff?, ->(**_) { false }) do + result = exp.export([span_data]) + _(result).must_equal(FAILURE) + end + end + end + describe 'ssl_verify_mode:' do it 'can be set to VERIFY_NONE by an envvar' do exp = OpenTelemetry::TestHelpers.with_env('OTEL_RUBY_EXPORTER_OTLP_SSL_VERIFY_NONE' => 'true') do From f7f7c508c2dfa266fe8a9cd036b1429186dc57a7 Mon Sep 17 00:00:00 2001 From: "otelbot-ruby[bot]" <231965978+otelbot-ruby[bot]@users.noreply.github.com> Date: Tue, 14 Oct 2025 09:42:43 -0700 Subject: [PATCH 02/13] release: Release 5 gems (#1938) * release: Release 5 gems * opentelemetry-sdk 1.10.0 (was 1.9.0) * opentelemetry-common 0.23.0 (was 0.22.0) * opentelemetry-exporter-otlp 0.31.0 (was 0.30.0) * opentelemetry-test-helpers 0.7.0 (was 0.6.0) * opentelemetry-metrics-sdk 0.10.0 (was 0.9.1) * Apply suggestions from code review --------- Co-authored-by: otelbot <197425009+otelbot@users.noreply.github.com> Co-authored-by: Kayla Reopelle <87386821+kaylareopelle@users.noreply.github.com> --- common/CHANGELOG.md | 4 ++++ common/lib/opentelemetry/common/version.rb | 2 +- exporter/otlp/CHANGELOG.md | 4 ++++ exporter/otlp/lib/opentelemetry/exporter/otlp/version.rb | 2 +- metrics_sdk/CHANGELOG.md | 4 ++++ metrics_sdk/lib/opentelemetry/sdk/metrics/version.rb | 2 +- sdk/CHANGELOG.md | 4 ++++ sdk/lib/opentelemetry/sdk/version.rb | 2 +- test_helpers/CHANGELOG.md | 4 ++++ test_helpers/lib/opentelemetry/test_helpers/version.rb | 2 +- 10 files changed, 25 insertions(+), 5 deletions(-) diff --git a/common/CHANGELOG.md b/common/CHANGELOG.md index b9fbe7c1cc..f2688cf161 100644 --- a/common/CHANGELOG.md +++ b/common/CHANGELOG.md @@ -1,5 +1,9 @@ # Release History: opentelemetry-common +### v0.23.0 / 2025-10-14 + +* ADDED: Create method for returning timestamp in nanoseconds + ### v0.22.0 / 2025-02-25 - ADDED: Support 3.1 Min Version diff --git a/common/lib/opentelemetry/common/version.rb b/common/lib/opentelemetry/common/version.rb index 332b882b0f..f117107d62 100644 --- a/common/lib/opentelemetry/common/version.rb +++ b/common/lib/opentelemetry/common/version.rb @@ -6,6 +6,6 @@ module OpenTelemetry module Common - VERSION = '0.22.0' + VERSION = '0.23.0' end end diff --git a/exporter/otlp/CHANGELOG.md b/exporter/otlp/CHANGELOG.md index 0b6da6b069..9d3a0e8b8d 100644 --- a/exporter/otlp/CHANGELOG.md +++ b/exporter/otlp/CHANGELOG.md @@ -1,5 +1,9 @@ # Release History: opentelemetry-exporter-otlp +### v0.31.0 / 2025-10-14 + +* ADDED: Add span flags support for isRemote property + ### v0.30.0 / 2025-02-25 - ADDED: Support 3.1 Min Version diff --git a/exporter/otlp/lib/opentelemetry/exporter/otlp/version.rb b/exporter/otlp/lib/opentelemetry/exporter/otlp/version.rb index 6ed6c7d33a..21647de0f3 100644 --- a/exporter/otlp/lib/opentelemetry/exporter/otlp/version.rb +++ b/exporter/otlp/lib/opentelemetry/exporter/otlp/version.rb @@ -8,7 +8,7 @@ module OpenTelemetry module Exporter module OTLP ## Current OpenTelemetry OTLP exporter version - VERSION = '0.30.0' + VERSION = '0.31.0' end end end diff --git a/metrics_sdk/CHANGELOG.md b/metrics_sdk/CHANGELOG.md index 35a5a1c34a..d72fd443fc 100644 --- a/metrics_sdk/CHANGELOG.md +++ b/metrics_sdk/CHANGELOG.md @@ -1,5 +1,9 @@ # Release History: opentelemetry-metrics-sdk +### v0.10.0 / 2025-10-14 + +* ADDED: Use common method for returning timestamp in nanoseconds + ### v0.9.1 / 2025-09-16 * FIXED: Use mapping scale outside of rescale logic diff --git a/metrics_sdk/lib/opentelemetry/sdk/metrics/version.rb b/metrics_sdk/lib/opentelemetry/sdk/metrics/version.rb index 9de2c09342..de87fe4c70 100644 --- a/metrics_sdk/lib/opentelemetry/sdk/metrics/version.rb +++ b/metrics_sdk/lib/opentelemetry/sdk/metrics/version.rb @@ -8,7 +8,7 @@ module OpenTelemetry module SDK module Metrics # Current OpenTelemetry metrics sdk version - VERSION = '0.9.1' + VERSION = '0.10.0' end end end diff --git a/sdk/CHANGELOG.md b/sdk/CHANGELOG.md index 87a53c117e..d1d63560ef 100644 --- a/sdk/CHANGELOG.md +++ b/sdk/CHANGELOG.md @@ -1,5 +1,9 @@ # Release History: opentelemetry-sdk +### v1.10.0 / 2025-10-14 + +* ADDED: Add span flags support for isRemote property + ### v1.9.0 / 2025-09-16 * ADDED: Add record_exception option for in_span diff --git a/sdk/lib/opentelemetry/sdk/version.rb b/sdk/lib/opentelemetry/sdk/version.rb index 8291901195..895b72ac8a 100644 --- a/sdk/lib/opentelemetry/sdk/version.rb +++ b/sdk/lib/opentelemetry/sdk/version.rb @@ -7,6 +7,6 @@ module OpenTelemetry module SDK ## Current OpenTelemetry version - VERSION = '1.9.0' + VERSION = '1.10.0' end end diff --git a/test_helpers/CHANGELOG.md b/test_helpers/CHANGELOG.md index c4ee3bc80e..b41d358628 100644 --- a/test_helpers/CHANGELOG.md +++ b/test_helpers/CHANGELOG.md @@ -1,5 +1,9 @@ # Release History: opentelemetry-test-helpers +### v0.7.0 / 2025-10-14 + +* ADDED: Use common method for returning timestamp in nanoseconds + ### v0.6.0 / 2025-02-25 - ADDED: Support 3.1 Min Version diff --git a/test_helpers/lib/opentelemetry/test_helpers/version.rb b/test_helpers/lib/opentelemetry/test_helpers/version.rb index a196c36cb9..6273a6ac99 100644 --- a/test_helpers/lib/opentelemetry/test_helpers/version.rb +++ b/test_helpers/lib/opentelemetry/test_helpers/version.rb @@ -7,6 +7,6 @@ module OpenTelemetry ## Current OpenTelemetry Test Helpers version module TestHelpers - VERSION = '0.6.0' + VERSION = '0.7.0' end end From 62a593bfc4f71f7935cb76f4516c32a8fa13950c Mon Sep 17 00:00:00 2001 From: Xuan <112967240+xuan-cao-swi@users.noreply.github.com> Date: Fri, 17 Oct 2025 13:24:05 -0400 Subject: [PATCH 03/13] chore: regenerate from opentelemetry-proto v1.8.0 for metrics, logs and common (#1945) --- exporter/otlp-common/Rakefile | 5 +-- .../collector/logs/v1/logs_service_pb.rb | 5 ++- .../metrics/v1/metrics_service_pb.rb | 5 ++- .../collector/trace/v1/trace_service_pb.rb | 5 ++- .../proto/common/v1/common_pb.rb | 6 +-- .../opentelemetry/proto/logs/v1/logs_pb.rb | 5 +-- .../proto/metrics/v1/metrics_pb.rb | 5 +-- .../proto/resource/v1/resource_pb.rb | 4 +- .../proto/trace/v1/trace_config_pb.rb | 25 ----------- .../opentelemetry/proto/trace/v1/trace_pb.rb | 6 +-- exporter/otlp-logs/Rakefile | 4 +- .../collector/logs/v1/logs_service_pb.rb | 10 ++--- .../metrics/v1/metrics_service_pb.rb | 10 ++--- .../v1development/profiles_service_pb.rb | 27 ++++++++++++ .../collector/trace/v1/trace_service_pb.rb | 10 ++--- .../proto/common/v1/common_pb.rb | 17 ++++---- .../opentelemetry/proto/logs/v1/logs_pb.rb | 18 ++++---- .../proto/metrics/v1/metrics_pb.rb | 42 +++++++++---------- .../profiles/v1development/profiles_pb.rb | 38 +++++++++++++++++ .../proto/resource/v1/resource_pb.rb | 8 ++-- .../opentelemetry/proto/trace/v1/trace_pb.rb | 25 +++++------ exporter/otlp-metrics/Rakefile | 4 +- .../collector/logs/v1/logs_service_pb.rb | 2 +- .../metrics/v1/metrics_service_pb.rb | 2 +- .../v1development/profiles_service_pb.rb | 27 ++++++++++++ .../collector/trace/v1/trace_service_pb.rb | 2 +- .../proto/common/v1/common_pb.rb | 5 ++- .../opentelemetry/proto/logs/v1/logs_pb.rb | 4 +- .../proto/metrics/v1/metrics_pb.rb | 4 +- .../profiles/v1development/profiles_pb.rb | 38 +++++++++++++++++ .../proto/resource/v1/resource_pb.rb | 4 +- .../opentelemetry/proto/trace/v1/trace_pb.rb | 5 ++- 32 files changed, 243 insertions(+), 134 deletions(-) delete mode 100644 exporter/otlp-common/lib/opentelemetry/proto/trace/v1/trace_config_pb.rb create mode 100644 exporter/otlp-logs/lib/opentelemetry/proto/collector/profiles/v1development/profiles_service_pb.rb create mode 100644 exporter/otlp-logs/lib/opentelemetry/proto/profiles/v1development/profiles_pb.rb create mode 100644 exporter/otlp-metrics/lib/opentelemetry/proto/collector/profiles/v1development/profiles_service_pb.rb create mode 100644 exporter/otlp-metrics/lib/opentelemetry/proto/profiles/v1development/profiles_pb.rb diff --git a/exporter/otlp-common/Rakefile b/exporter/otlp-common/Rakefile index 28d31e2fe7..e4050d1e41 100644 --- a/exporter/otlp-common/Rakefile +++ b/exporter/otlp-common/Rakefile @@ -32,7 +32,7 @@ default_tasks = task default: default_tasks -PROTO_VERSION = 'v0.18.0' +PROTO_VERSION = 'v1.8.0' PROTOBUF_FILES = [ 'collector/logs/v1/logs_service.proto', 'collector/metrics/v1/metrics_service.proto', @@ -41,8 +41,7 @@ PROTOBUF_FILES = [ 'logs/v1/logs.proto', 'metrics/v1/metrics.proto', 'resource/v1/resource.proto', - 'trace/v1/trace.proto', - 'trace/v1/trace_config.proto' + 'trace/v1/trace.proto' ].freeze desc 'Update probobuf' diff --git a/exporter/otlp-common/lib/opentelemetry/proto/collector/logs/v1/logs_service_pb.rb b/exporter/otlp-common/lib/opentelemetry/proto/collector/logs/v1/logs_service_pb.rb index 6cc98b0e7b..f1c0b1a23d 100644 --- a/exporter/otlp-common/lib/opentelemetry/proto/collector/logs/v1/logs_service_pb.rb +++ b/exporter/otlp-common/lib/opentelemetry/proto/collector/logs/v1/logs_service_pb.rb @@ -7,9 +7,9 @@ require 'opentelemetry/proto/logs/v1/logs_pb' -descriptor_data = "\n8opentelemetry/proto/collector/logs/v1/logs_service.proto\x12%opentelemetry.proto.collector.logs.v1\x1a&opentelemetry/proto/logs/v1/logs.proto\"\\\n\x18\x45xportLogsServiceRequest\x12@\n\rresource_logs\x18\x01 \x03(\x0b\x32).opentelemetry.proto.logs.v1.ResourceLogs\"\x1b\n\x19\x45xportLogsServiceResponse2\x9d\x01\n\x0bLogsService\x12\x8d\x01\n\x06\x45xport\x12?.opentelemetry.proto.collector.logs.v1.ExportLogsServiceRequest\x1a@.opentelemetry.proto.collector.logs.v1.ExportLogsServiceResponse\"\x00\x42p\n(io.opentelemetry.proto.collector.logs.v1B\x10LogsServiceProtoP\x01Z0go.opentelemetry.io/proto/otlp/collector/logs/v1b\x06proto3" +descriptor_data = "\n8opentelemetry/proto/collector/logs/v1/logs_service.proto\x12%opentelemetry.proto.collector.logs.v1\x1a&opentelemetry/proto/logs/v1/logs.proto\"\\\n\x18\x45xportLogsServiceRequest\x12@\n\rresource_logs\x18\x01 \x03(\x0b\x32).opentelemetry.proto.logs.v1.ResourceLogs\"u\n\x19\x45xportLogsServiceResponse\x12X\n\x0fpartial_success\x18\x01 \x01(\x0b\x32?.opentelemetry.proto.collector.logs.v1.ExportLogsPartialSuccess\"O\n\x18\x45xportLogsPartialSuccess\x12\x1c\n\x14rejected_log_records\x18\x01 \x01(\x03\x12\x15\n\rerror_message\x18\x02 \x01(\t2\x9d\x01\n\x0bLogsService\x12\x8d\x01\n\x06\x45xport\x12?.opentelemetry.proto.collector.logs.v1.ExportLogsServiceRequest\x1a@.opentelemetry.proto.collector.logs.v1.ExportLogsServiceResponse\"\x00\x42\x98\x01\n(io.opentelemetry.proto.collector.logs.v1B\x10LogsServiceProtoP\x01Z0go.opentelemetry.io/proto/otlp/collector/logs/v1\xaa\x02%OpenTelemetry.Proto.Collector.Logs.V1b\x06proto3" -pool = Google::Protobuf::DescriptorPool.generated_pool +pool = ::Google::Protobuf::DescriptorPool.generated_pool pool.add_serialized_file(descriptor_data) module Opentelemetry @@ -19,6 +19,7 @@ module Logs module V1 ExportLogsServiceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.collector.logs.v1.ExportLogsServiceRequest").msgclass ExportLogsServiceResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.collector.logs.v1.ExportLogsServiceResponse").msgclass + ExportLogsPartialSuccess = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.collector.logs.v1.ExportLogsPartialSuccess").msgclass end end end diff --git a/exporter/otlp-common/lib/opentelemetry/proto/collector/metrics/v1/metrics_service_pb.rb b/exporter/otlp-common/lib/opentelemetry/proto/collector/metrics/v1/metrics_service_pb.rb index 7e95f43cdb..5159483185 100644 --- a/exporter/otlp-common/lib/opentelemetry/proto/collector/metrics/v1/metrics_service_pb.rb +++ b/exporter/otlp-common/lib/opentelemetry/proto/collector/metrics/v1/metrics_service_pb.rb @@ -7,9 +7,9 @@ require 'opentelemetry/proto/metrics/v1/metrics_pb' -descriptor_data = "\n>opentelemetry/proto/collector/metrics/v1/metrics_service.proto\x12(opentelemetry.proto.collector.metrics.v1\x1a,opentelemetry/proto/metrics/v1/metrics.proto\"h\n\x1b\x45xportMetricsServiceRequest\x12I\n\x10resource_metrics\x18\x01 \x03(\x0b\x32/.opentelemetry.proto.metrics.v1.ResourceMetrics\"\x1e\n\x1c\x45xportMetricsServiceResponse2\xac\x01\n\x0eMetricsService\x12\x99\x01\n\x06\x45xport\x12\x45.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceRequest\x1a\x46.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceResponse\"\x00\x42y\n+io.opentelemetry.proto.collector.metrics.v1B\x13MetricsServiceProtoP\x01Z3go.opentelemetry.io/proto/otlp/collector/metrics/v1b\x06proto3" +descriptor_data = "\n>opentelemetry/proto/collector/metrics/v1/metrics_service.proto\x12(opentelemetry.proto.collector.metrics.v1\x1a,opentelemetry/proto/metrics/v1/metrics.proto\"h\n\x1b\x45xportMetricsServiceRequest\x12I\n\x10resource_metrics\x18\x01 \x03(\x0b\x32/.opentelemetry.proto.metrics.v1.ResourceMetrics\"~\n\x1c\x45xportMetricsServiceResponse\x12^\n\x0fpartial_success\x18\x01 \x01(\x0b\x32\x45.opentelemetry.proto.collector.metrics.v1.ExportMetricsPartialSuccess\"R\n\x1b\x45xportMetricsPartialSuccess\x12\x1c\n\x14rejected_data_points\x18\x01 \x01(\x03\x12\x15\n\rerror_message\x18\x02 \x01(\t2\xac\x01\n\x0eMetricsService\x12\x99\x01\n\x06\x45xport\x12\x45.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceRequest\x1a\x46.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceResponse\"\x00\x42\xa4\x01\n+io.opentelemetry.proto.collector.metrics.v1B\x13MetricsServiceProtoP\x01Z3go.opentelemetry.io/proto/otlp/collector/metrics/v1\xaa\x02(OpenTelemetry.Proto.Collector.Metrics.V1b\x06proto3" -pool = Google::Protobuf::DescriptorPool.generated_pool +pool = ::Google::Protobuf::DescriptorPool.generated_pool pool.add_serialized_file(descriptor_data) module Opentelemetry @@ -19,6 +19,7 @@ module Metrics module V1 ExportMetricsServiceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceRequest").msgclass ExportMetricsServiceResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceResponse").msgclass + ExportMetricsPartialSuccess = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.collector.metrics.v1.ExportMetricsPartialSuccess").msgclass end end end diff --git a/exporter/otlp-common/lib/opentelemetry/proto/collector/trace/v1/trace_service_pb.rb b/exporter/otlp-common/lib/opentelemetry/proto/collector/trace/v1/trace_service_pb.rb index f6bc5efc5c..bf85d665db 100644 --- a/exporter/otlp-common/lib/opentelemetry/proto/collector/trace/v1/trace_service_pb.rb +++ b/exporter/otlp-common/lib/opentelemetry/proto/collector/trace/v1/trace_service_pb.rb @@ -7,9 +7,9 @@ require 'opentelemetry/proto/trace/v1/trace_pb' -descriptor_data = "\n:opentelemetry/proto/collector/trace/v1/trace_service.proto\x12&opentelemetry.proto.collector.trace.v1\x1a(opentelemetry/proto/trace/v1/trace.proto\"`\n\x19\x45xportTraceServiceRequest\x12\x43\n\x0eresource_spans\x18\x01 \x03(\x0b\x32+.opentelemetry.proto.trace.v1.ResourceSpans\"\x1c\n\x1a\x45xportTraceServiceResponse2\xa2\x01\n\x0cTraceService\x12\x91\x01\n\x06\x45xport\x12\x41.opentelemetry.proto.collector.trace.v1.ExportTraceServiceRequest\x1a\x42.opentelemetry.proto.collector.trace.v1.ExportTraceServiceResponse\"\x00\x42s\n)io.opentelemetry.proto.collector.trace.v1B\x11TraceServiceProtoP\x01Z1go.opentelemetry.io/proto/otlp/collector/trace/v1b\x06proto3" +descriptor_data = "\n:opentelemetry/proto/collector/trace/v1/trace_service.proto\x12&opentelemetry.proto.collector.trace.v1\x1a(opentelemetry/proto/trace/v1/trace.proto\"`\n\x19\x45xportTraceServiceRequest\x12\x43\n\x0eresource_spans\x18\x01 \x03(\x0b\x32+.opentelemetry.proto.trace.v1.ResourceSpans\"x\n\x1a\x45xportTraceServiceResponse\x12Z\n\x0fpartial_success\x18\x01 \x01(\x0b\x32\x41.opentelemetry.proto.collector.trace.v1.ExportTracePartialSuccess\"J\n\x19\x45xportTracePartialSuccess\x12\x16\n\x0erejected_spans\x18\x01 \x01(\x03\x12\x15\n\rerror_message\x18\x02 \x01(\t2\xa2\x01\n\x0cTraceService\x12\x91\x01\n\x06\x45xport\x12\x41.opentelemetry.proto.collector.trace.v1.ExportTraceServiceRequest\x1a\x42.opentelemetry.proto.collector.trace.v1.ExportTraceServiceResponse\"\x00\x42\x9c\x01\n)io.opentelemetry.proto.collector.trace.v1B\x11TraceServiceProtoP\x01Z1go.opentelemetry.io/proto/otlp/collector/trace/v1\xaa\x02&OpenTelemetry.Proto.Collector.Trace.V1b\x06proto3" -pool = Google::Protobuf::DescriptorPool.generated_pool +pool = ::Google::Protobuf::DescriptorPool.generated_pool pool.add_serialized_file(descriptor_data) module Opentelemetry @@ -19,6 +19,7 @@ module Trace module V1 ExportTraceServiceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.collector.trace.v1.ExportTraceServiceRequest").msgclass ExportTraceServiceResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.collector.trace.v1.ExportTraceServiceResponse").msgclass + ExportTracePartialSuccess = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.collector.trace.v1.ExportTracePartialSuccess").msgclass end end end diff --git a/exporter/otlp-common/lib/opentelemetry/proto/common/v1/common_pb.rb b/exporter/otlp-common/lib/opentelemetry/proto/common/v1/common_pb.rb index c91fe92c51..6dc7114329 100644 --- a/exporter/otlp-common/lib/opentelemetry/proto/common/v1/common_pb.rb +++ b/exporter/otlp-common/lib/opentelemetry/proto/common/v1/common_pb.rb @@ -5,9 +5,9 @@ require 'google/protobuf' -descriptor_data = "\n*opentelemetry/proto/common/v1/common.proto\x12\x1dopentelemetry.proto.common.v1\"\x8c\x02\n\x08\x41nyValue\x12\x16\n\x0cstring_value\x18\x01 \x01(\tH\x00\x12\x14\n\nbool_value\x18\x02 \x01(\x08H\x00\x12\x13\n\tint_value\x18\x03 \x01(\x03H\x00\x12\x16\n\x0c\x64ouble_value\x18\x04 \x01(\x01H\x00\x12@\n\x0b\x61rray_value\x18\x05 \x01(\x0b\x32).opentelemetry.proto.common.v1.ArrayValueH\x00\x12\x43\n\x0ckvlist_value\x18\x06 \x01(\x0b\x32+.opentelemetry.proto.common.v1.KeyValueListH\x00\x12\x15\n\x0b\x62ytes_value\x18\x07 \x01(\x0cH\x00\x42\x07\n\x05value\"E\n\nArrayValue\x12\x37\n\x06values\x18\x01 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.AnyValue\"G\n\x0cKeyValueList\x12\x37\n\x06values\x18\x01 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\"O\n\x08KeyValue\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x36\n\x05value\x18\x02 \x01(\x0b\x32\'.opentelemetry.proto.common.v1.AnyValue\";\n\x16InstrumentationLibrary\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07version\x18\x02 \x01(\t:\x02\x18\x01\"5\n\x14InstrumentationScope\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07version\x18\x02 \x01(\tB[\n io.opentelemetry.proto.common.v1B\x0b\x43ommonProtoP\x01Z(go.opentelemetry.io/proto/otlp/common/v1b\x06proto3" +descriptor_data = "\n*opentelemetry/proto/common/v1/common.proto\x12\x1dopentelemetry.proto.common.v1\"\x8c\x02\n\x08\x41nyValue\x12\x16\n\x0cstring_value\x18\x01 \x01(\tH\x00\x12\x14\n\nbool_value\x18\x02 \x01(\x08H\x00\x12\x13\n\tint_value\x18\x03 \x01(\x03H\x00\x12\x16\n\x0c\x64ouble_value\x18\x04 \x01(\x01H\x00\x12@\n\x0b\x61rray_value\x18\x05 \x01(\x0b\x32).opentelemetry.proto.common.v1.ArrayValueH\x00\x12\x43\n\x0ckvlist_value\x18\x06 \x01(\x0b\x32+.opentelemetry.proto.common.v1.KeyValueListH\x00\x12\x15\n\x0b\x62ytes_value\x18\x07 \x01(\x0cH\x00\x42\x07\n\x05value\"E\n\nArrayValue\x12\x37\n\x06values\x18\x01 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.AnyValue\"G\n\x0cKeyValueList\x12\x37\n\x06values\x18\x01 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\"O\n\x08KeyValue\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x36\n\x05value\x18\x02 \x01(\x0b\x32\'.opentelemetry.proto.common.v1.AnyValue\"\x94\x01\n\x14InstrumentationScope\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07version\x18\x02 \x01(\t\x12;\n\nattributes\x18\x03 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\x04 \x01(\r\"X\n\tEntityRef\x12\x12\n\nschema_url\x18\x01 \x01(\t\x12\x0c\n\x04type\x18\x02 \x01(\t\x12\x0f\n\x07id_keys\x18\x03 \x03(\t\x12\x18\n\x10\x64\x65scription_keys\x18\x04 \x03(\tB{\n io.opentelemetry.proto.common.v1B\x0b\x43ommonProtoP\x01Z(go.opentelemetry.io/proto/otlp/common/v1\xaa\x02\x1dOpenTelemetry.Proto.Common.V1b\x06proto3" -pool = Google::Protobuf::DescriptorPool.generated_pool +pool = ::Google::Protobuf::DescriptorPool.generated_pool pool.add_serialized_file(descriptor_data) module Opentelemetry @@ -18,8 +18,8 @@ module V1 ArrayValue = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.common.v1.ArrayValue").msgclass KeyValueList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.common.v1.KeyValueList").msgclass KeyValue = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.common.v1.KeyValue").msgclass - InstrumentationLibrary = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.common.v1.InstrumentationLibrary").msgclass InstrumentationScope = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.common.v1.InstrumentationScope").msgclass + EntityRef = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.common.v1.EntityRef").msgclass end end end diff --git a/exporter/otlp-common/lib/opentelemetry/proto/logs/v1/logs_pb.rb b/exporter/otlp-common/lib/opentelemetry/proto/logs/v1/logs_pb.rb index 6fee743383..ce9b71580c 100644 --- a/exporter/otlp-common/lib/opentelemetry/proto/logs/v1/logs_pb.rb +++ b/exporter/otlp-common/lib/opentelemetry/proto/logs/v1/logs_pb.rb @@ -8,9 +8,9 @@ require 'opentelemetry/proto/resource/v1/resource_pb' -descriptor_data = "\n&opentelemetry/proto/logs/v1/logs.proto\x12\x1bopentelemetry.proto.logs.v1\x1a*opentelemetry/proto/common/v1/common.proto\x1a.opentelemetry/proto/resource/v1/resource.proto\"L\n\x08LogsData\x12@\n\rresource_logs\x18\x01 \x03(\x0b\x32).opentelemetry.proto.logs.v1.ResourceLogs\"\xff\x01\n\x0cResourceLogs\x12;\n\x08resource\x18\x01 \x01(\x0b\x32).opentelemetry.proto.resource.v1.Resource\x12:\n\nscope_logs\x18\x02 \x03(\x0b\x32&.opentelemetry.proto.logs.v1.ScopeLogs\x12\x62\n\x1cinstrumentation_library_logs\x18\xe8\x07 \x03(\x0b\x32\x37.opentelemetry.proto.logs.v1.InstrumentationLibraryLogsB\x02\x18\x01\x12\x12\n\nschema_url\x18\x03 \x01(\t\"\xa0\x01\n\tScopeLogs\x12\x42\n\x05scope\x18\x01 \x01(\x0b\x32\x33.opentelemetry.proto.common.v1.InstrumentationScope\x12;\n\x0blog_records\x18\x02 \x03(\x0b\x32&.opentelemetry.proto.logs.v1.LogRecord\x12\x12\n\nschema_url\x18\x03 \x01(\t\"\xc9\x01\n\x1aInstrumentationLibraryLogs\x12V\n\x17instrumentation_library\x18\x01 \x01(\x0b\x32\x35.opentelemetry.proto.common.v1.InstrumentationLibrary\x12;\n\x0blog_records\x18\x02 \x03(\x0b\x32&.opentelemetry.proto.logs.v1.LogRecord\x12\x12\n\nschema_url\x18\x03 \x01(\t:\x02\x18\x01\"\xef\x02\n\tLogRecord\x12\x16\n\x0etime_unix_nano\x18\x01 \x01(\x06\x12\x1f\n\x17observed_time_unix_nano\x18\x0b \x01(\x06\x12\x44\n\x0fseverity_number\x18\x02 \x01(\x0e\x32+.opentelemetry.proto.logs.v1.SeverityNumber\x12\x15\n\rseverity_text\x18\x03 \x01(\t\x12\x35\n\x04\x62ody\x18\x05 \x01(\x0b\x32\'.opentelemetry.proto.common.v1.AnyValue\x12;\n\nattributes\x18\x06 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\x07 \x01(\r\x12\r\n\x05\x66lags\x18\x08 \x01(\x07\x12\x10\n\x08trace_id\x18\t \x01(\x0c\x12\x0f\n\x07span_id\x18\n \x01(\x0cJ\x04\x08\x04\x10\x05*\xc3\x05\n\x0eSeverityNumber\x12\x1f\n\x1bSEVERITY_NUMBER_UNSPECIFIED\x10\x00\x12\x19\n\x15SEVERITY_NUMBER_TRACE\x10\x01\x12\x1a\n\x16SEVERITY_NUMBER_TRACE2\x10\x02\x12\x1a\n\x16SEVERITY_NUMBER_TRACE3\x10\x03\x12\x1a\n\x16SEVERITY_NUMBER_TRACE4\x10\x04\x12\x19\n\x15SEVERITY_NUMBER_DEBUG\x10\x05\x12\x1a\n\x16SEVERITY_NUMBER_DEBUG2\x10\x06\x12\x1a\n\x16SEVERITY_NUMBER_DEBUG3\x10\x07\x12\x1a\n\x16SEVERITY_NUMBER_DEBUG4\x10\x08\x12\x18\n\x14SEVERITY_NUMBER_INFO\x10\t\x12\x19\n\x15SEVERITY_NUMBER_INFO2\x10\n\x12\x19\n\x15SEVERITY_NUMBER_INFO3\x10\x0b\x12\x19\n\x15SEVERITY_NUMBER_INFO4\x10\x0c\x12\x18\n\x14SEVERITY_NUMBER_WARN\x10\r\x12\x19\n\x15SEVERITY_NUMBER_WARN2\x10\x0e\x12\x19\n\x15SEVERITY_NUMBER_WARN3\x10\x0f\x12\x19\n\x15SEVERITY_NUMBER_WARN4\x10\x10\x12\x19\n\x15SEVERITY_NUMBER_ERROR\x10\x11\x12\x1a\n\x16SEVERITY_NUMBER_ERROR2\x10\x12\x12\x1a\n\x16SEVERITY_NUMBER_ERROR3\x10\x13\x12\x1a\n\x16SEVERITY_NUMBER_ERROR4\x10\x14\x12\x19\n\x15SEVERITY_NUMBER_FATAL\x10\x15\x12\x1a\n\x16SEVERITY_NUMBER_FATAL2\x10\x16\x12\x1a\n\x16SEVERITY_NUMBER_FATAL3\x10\x17\x12\x1a\n\x16SEVERITY_NUMBER_FATAL4\x10\x18*X\n\x0eLogRecordFlags\x12\x1f\n\x1bLOG_RECORD_FLAG_UNSPECIFIED\x10\x00\x12%\n LOG_RECORD_FLAG_TRACE_FLAGS_MASK\x10\xff\x01\x42U\n\x1eio.opentelemetry.proto.logs.v1B\tLogsProtoP\x01Z&go.opentelemetry.io/proto/otlp/logs/v1b\x06proto3" +descriptor_data = "\n&opentelemetry/proto/logs/v1/logs.proto\x12\x1bopentelemetry.proto.logs.v1\x1a*opentelemetry/proto/common/v1/common.proto\x1a.opentelemetry/proto/resource/v1/resource.proto\"L\n\x08LogsData\x12@\n\rresource_logs\x18\x01 \x03(\x0b\x32).opentelemetry.proto.logs.v1.ResourceLogs\"\xa3\x01\n\x0cResourceLogs\x12;\n\x08resource\x18\x01 \x01(\x0b\x32).opentelemetry.proto.resource.v1.Resource\x12:\n\nscope_logs\x18\x02 \x03(\x0b\x32&.opentelemetry.proto.logs.v1.ScopeLogs\x12\x12\n\nschema_url\x18\x03 \x01(\tJ\x06\x08\xe8\x07\x10\xe9\x07\"\xa0\x01\n\tScopeLogs\x12\x42\n\x05scope\x18\x01 \x01(\x0b\x32\x33.opentelemetry.proto.common.v1.InstrumentationScope\x12;\n\x0blog_records\x18\x02 \x03(\x0b\x32&.opentelemetry.proto.logs.v1.LogRecord\x12\x12\n\nschema_url\x18\x03 \x01(\t\"\x83\x03\n\tLogRecord\x12\x16\n\x0etime_unix_nano\x18\x01 \x01(\x06\x12\x1f\n\x17observed_time_unix_nano\x18\x0b \x01(\x06\x12\x44\n\x0fseverity_number\x18\x02 \x01(\x0e\x32+.opentelemetry.proto.logs.v1.SeverityNumber\x12\x15\n\rseverity_text\x18\x03 \x01(\t\x12\x35\n\x04\x62ody\x18\x05 \x01(\x0b\x32\'.opentelemetry.proto.common.v1.AnyValue\x12;\n\nattributes\x18\x06 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\x07 \x01(\r\x12\r\n\x05\x66lags\x18\x08 \x01(\x07\x12\x10\n\x08trace_id\x18\t \x01(\x0c\x12\x0f\n\x07span_id\x18\n \x01(\x0c\x12\x12\n\nevent_name\x18\x0c \x01(\tJ\x04\x08\x04\x10\x05*\xc3\x05\n\x0eSeverityNumber\x12\x1f\n\x1bSEVERITY_NUMBER_UNSPECIFIED\x10\x00\x12\x19\n\x15SEVERITY_NUMBER_TRACE\x10\x01\x12\x1a\n\x16SEVERITY_NUMBER_TRACE2\x10\x02\x12\x1a\n\x16SEVERITY_NUMBER_TRACE3\x10\x03\x12\x1a\n\x16SEVERITY_NUMBER_TRACE4\x10\x04\x12\x19\n\x15SEVERITY_NUMBER_DEBUG\x10\x05\x12\x1a\n\x16SEVERITY_NUMBER_DEBUG2\x10\x06\x12\x1a\n\x16SEVERITY_NUMBER_DEBUG3\x10\x07\x12\x1a\n\x16SEVERITY_NUMBER_DEBUG4\x10\x08\x12\x18\n\x14SEVERITY_NUMBER_INFO\x10\t\x12\x19\n\x15SEVERITY_NUMBER_INFO2\x10\n\x12\x19\n\x15SEVERITY_NUMBER_INFO3\x10\x0b\x12\x19\n\x15SEVERITY_NUMBER_INFO4\x10\x0c\x12\x18\n\x14SEVERITY_NUMBER_WARN\x10\r\x12\x19\n\x15SEVERITY_NUMBER_WARN2\x10\x0e\x12\x19\n\x15SEVERITY_NUMBER_WARN3\x10\x0f\x12\x19\n\x15SEVERITY_NUMBER_WARN4\x10\x10\x12\x19\n\x15SEVERITY_NUMBER_ERROR\x10\x11\x12\x1a\n\x16SEVERITY_NUMBER_ERROR2\x10\x12\x12\x1a\n\x16SEVERITY_NUMBER_ERROR3\x10\x13\x12\x1a\n\x16SEVERITY_NUMBER_ERROR4\x10\x14\x12\x19\n\x15SEVERITY_NUMBER_FATAL\x10\x15\x12\x1a\n\x16SEVERITY_NUMBER_FATAL2\x10\x16\x12\x1a\n\x16SEVERITY_NUMBER_FATAL3\x10\x17\x12\x1a\n\x16SEVERITY_NUMBER_FATAL4\x10\x18*Y\n\x0eLogRecordFlags\x12\x1f\n\x1bLOG_RECORD_FLAGS_DO_NOT_USE\x10\x00\x12&\n!LOG_RECORD_FLAGS_TRACE_FLAGS_MASK\x10\xff\x01\x42s\n\x1eio.opentelemetry.proto.logs.v1B\tLogsProtoP\x01Z&go.opentelemetry.io/proto/otlp/logs/v1\xaa\x02\x1bOpenTelemetry.Proto.Logs.V1b\x06proto3" -pool = Google::Protobuf::DescriptorPool.generated_pool +pool = ::Google::Protobuf::DescriptorPool.generated_pool pool.add_serialized_file(descriptor_data) module Opentelemetry @@ -20,7 +20,6 @@ module V1 LogsData = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.logs.v1.LogsData").msgclass ResourceLogs = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.logs.v1.ResourceLogs").msgclass ScopeLogs = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.logs.v1.ScopeLogs").msgclass - InstrumentationLibraryLogs = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.logs.v1.InstrumentationLibraryLogs").msgclass LogRecord = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.logs.v1.LogRecord").msgclass SeverityNumber = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.logs.v1.SeverityNumber").enummodule LogRecordFlags = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.logs.v1.LogRecordFlags").enummodule diff --git a/exporter/otlp-common/lib/opentelemetry/proto/metrics/v1/metrics_pb.rb b/exporter/otlp-common/lib/opentelemetry/proto/metrics/v1/metrics_pb.rb index eccff76040..ced1dd9f8a 100644 --- a/exporter/otlp-common/lib/opentelemetry/proto/metrics/v1/metrics_pb.rb +++ b/exporter/otlp-common/lib/opentelemetry/proto/metrics/v1/metrics_pb.rb @@ -8,9 +8,9 @@ require 'opentelemetry/proto/resource/v1/resource_pb' -descriptor_data = "\n,opentelemetry/proto/metrics/v1/metrics.proto\x12\x1eopentelemetry.proto.metrics.v1\x1a*opentelemetry/proto/common/v1/common.proto\x1a.opentelemetry/proto/resource/v1/resource.proto\"X\n\x0bMetricsData\x12I\n\x10resource_metrics\x18\x01 \x03(\x0b\x32/.opentelemetry.proto.metrics.v1.ResourceMetrics\"\x94\x02\n\x0fResourceMetrics\x12;\n\x08resource\x18\x01 \x01(\x0b\x32).opentelemetry.proto.resource.v1.Resource\x12\x43\n\rscope_metrics\x18\x02 \x03(\x0b\x32,.opentelemetry.proto.metrics.v1.ScopeMetrics\x12k\n\x1finstrumentation_library_metrics\x18\xe8\x07 \x03(\x0b\x32=.opentelemetry.proto.metrics.v1.InstrumentationLibraryMetricsB\x02\x18\x01\x12\x12\n\nschema_url\x18\x03 \x01(\t\"\x9f\x01\n\x0cScopeMetrics\x12\x42\n\x05scope\x18\x01 \x01(\x0b\x32\x33.opentelemetry.proto.common.v1.InstrumentationScope\x12\x37\n\x07metrics\x18\x02 \x03(\x0b\x32&.opentelemetry.proto.metrics.v1.Metric\x12\x12\n\nschema_url\x18\x03 \x01(\t\"\xc8\x01\n\x1dInstrumentationLibraryMetrics\x12V\n\x17instrumentation_library\x18\x01 \x01(\x0b\x32\x35.opentelemetry.proto.common.v1.InstrumentationLibrary\x12\x37\n\x07metrics\x18\x02 \x03(\x0b\x32&.opentelemetry.proto.metrics.v1.Metric\x12\x12\n\nschema_url\x18\x03 \x01(\t:\x02\x18\x01\"\x92\x03\n\x06Metric\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\x0c\n\x04unit\x18\x03 \x01(\t\x12\x36\n\x05gauge\x18\x05 \x01(\x0b\x32%.opentelemetry.proto.metrics.v1.GaugeH\x00\x12\x32\n\x03sum\x18\x07 \x01(\x0b\x32#.opentelemetry.proto.metrics.v1.SumH\x00\x12>\n\thistogram\x18\t \x01(\x0b\x32).opentelemetry.proto.metrics.v1.HistogramH\x00\x12U\n\x15\x65xponential_histogram\x18\n \x01(\x0b\x32\x34.opentelemetry.proto.metrics.v1.ExponentialHistogramH\x00\x12:\n\x07summary\x18\x0b \x01(\x0b\x32\'.opentelemetry.proto.metrics.v1.SummaryH\x00\x42\x06\n\x04\x64\x61taJ\x04\x08\x04\x10\x05J\x04\x08\x06\x10\x07J\x04\x08\x08\x10\t\"M\n\x05Gauge\x12\x44\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32/.opentelemetry.proto.metrics.v1.NumberDataPoint\"\xba\x01\n\x03Sum\x12\x44\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32/.opentelemetry.proto.metrics.v1.NumberDataPoint\x12W\n\x17\x61ggregation_temporality\x18\x02 \x01(\x0e\x32\x36.opentelemetry.proto.metrics.v1.AggregationTemporality\x12\x14\n\x0cis_monotonic\x18\x03 \x01(\x08\"\xad\x01\n\tHistogram\x12G\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32\x32.opentelemetry.proto.metrics.v1.HistogramDataPoint\x12W\n\x17\x61ggregation_temporality\x18\x02 \x01(\x0e\x32\x36.opentelemetry.proto.metrics.v1.AggregationTemporality\"\xc3\x01\n\x14\x45xponentialHistogram\x12R\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32=.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint\x12W\n\x17\x61ggregation_temporality\x18\x02 \x01(\x0e\x32\x36.opentelemetry.proto.metrics.v1.AggregationTemporality\"P\n\x07Summary\x12\x45\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32\x30.opentelemetry.proto.metrics.v1.SummaryDataPoint\"\x86\x02\n\x0fNumberDataPoint\x12;\n\nattributes\x18\x07 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x1c\n\x14start_time_unix_nano\x18\x02 \x01(\x06\x12\x16\n\x0etime_unix_nano\x18\x03 \x01(\x06\x12\x13\n\tas_double\x18\x04 \x01(\x01H\x00\x12\x10\n\x06\x61s_int\x18\x06 \x01(\x10H\x00\x12;\n\texemplars\x18\x05 \x03(\x0b\x32(.opentelemetry.proto.metrics.v1.Exemplar\x12\r\n\x05\x66lags\x18\x08 \x01(\rB\x07\n\x05valueJ\x04\x08\x01\x10\x02\"\xe6\x02\n\x12HistogramDataPoint\x12;\n\nattributes\x18\t \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x1c\n\x14start_time_unix_nano\x18\x02 \x01(\x06\x12\x16\n\x0etime_unix_nano\x18\x03 \x01(\x06\x12\r\n\x05\x63ount\x18\x04 \x01(\x06\x12\x10\n\x03sum\x18\x05 \x01(\x01H\x00\x88\x01\x01\x12\x15\n\rbucket_counts\x18\x06 \x03(\x06\x12\x17\n\x0f\x65xplicit_bounds\x18\x07 \x03(\x01\x12;\n\texemplars\x18\x08 \x03(\x0b\x32(.opentelemetry.proto.metrics.v1.Exemplar\x12\r\n\x05\x66lags\x18\n \x01(\r\x12\x10\n\x03min\x18\x0b \x01(\x01H\x01\x88\x01\x01\x12\x10\n\x03max\x18\x0c \x01(\x01H\x02\x88\x01\x01\x42\x06\n\x04_sumB\x06\n\x04_minB\x06\n\x04_maxJ\x04\x08\x01\x10\x02\"\xc2\x04\n\x1d\x45xponentialHistogramDataPoint\x12;\n\nattributes\x18\x01 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x1c\n\x14start_time_unix_nano\x18\x02 \x01(\x06\x12\x16\n\x0etime_unix_nano\x18\x03 \x01(\x06\x12\r\n\x05\x63ount\x18\x04 \x01(\x06\x12\x10\n\x03sum\x18\x05 \x01(\x01H\x00\x88\x01\x01\x12\r\n\x05scale\x18\x06 \x01(\x11\x12\x12\n\nzero_count\x18\x07 \x01(\x06\x12W\n\x08positive\x18\x08 \x01(\x0b\x32\x45.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets\x12W\n\x08negative\x18\t \x01(\x0b\x32\x45.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets\x12\r\n\x05\x66lags\x18\n \x01(\r\x12;\n\texemplars\x18\x0b \x03(\x0b\x32(.opentelemetry.proto.metrics.v1.Exemplar\x12\x10\n\x03min\x18\x0c \x01(\x01H\x01\x88\x01\x01\x12\x10\n\x03max\x18\r \x01(\x01H\x02\x88\x01\x01\x1a\x30\n\x07\x42uckets\x12\x0e\n\x06offset\x18\x01 \x01(\x11\x12\x15\n\rbucket_counts\x18\x02 \x03(\x04\x42\x06\n\x04_sumB\x06\n\x04_minB\x06\n\x04_max\"\xc5\x02\n\x10SummaryDataPoint\x12;\n\nattributes\x18\x07 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x1c\n\x14start_time_unix_nano\x18\x02 \x01(\x06\x12\x16\n\x0etime_unix_nano\x18\x03 \x01(\x06\x12\r\n\x05\x63ount\x18\x04 \x01(\x06\x12\x0b\n\x03sum\x18\x05 \x01(\x01\x12Y\n\x0fquantile_values\x18\x06 \x03(\x0b\x32@.opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile\x12\r\n\x05\x66lags\x18\x08 \x01(\r\x1a\x32\n\x0fValueAtQuantile\x12\x10\n\x08quantile\x18\x01 \x01(\x01\x12\r\n\x05value\x18\x02 \x01(\x01J\x04\x08\x01\x10\x02\"\xc1\x01\n\x08\x45xemplar\x12\x44\n\x13\x66iltered_attributes\x18\x07 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x16\n\x0etime_unix_nano\x18\x02 \x01(\x06\x12\x13\n\tas_double\x18\x03 \x01(\x01H\x00\x12\x10\n\x06\x61s_int\x18\x06 \x01(\x10H\x00\x12\x0f\n\x07span_id\x18\x04 \x01(\x0c\x12\x10\n\x08trace_id\x18\x05 \x01(\x0c\x42\x07\n\x05valueJ\x04\x08\x01\x10\x02*\x8c\x01\n\x16\x41ggregationTemporality\x12\'\n#AGGREGATION_TEMPORALITY_UNSPECIFIED\x10\x00\x12!\n\x1d\x41GGREGATION_TEMPORALITY_DELTA\x10\x01\x12&\n\"AGGREGATION_TEMPORALITY_CUMULATIVE\x10\x02*;\n\x0e\x44\x61taPointFlags\x12\r\n\tFLAG_NONE\x10\x00\x12\x1a\n\x16\x46LAG_NO_RECORDED_VALUE\x10\x01\x42^\n!io.opentelemetry.proto.metrics.v1B\x0cMetricsProtoP\x01Z)go.opentelemetry.io/proto/otlp/metrics/v1b\x06proto3" +descriptor_data = "\n,opentelemetry/proto/metrics/v1/metrics.proto\x12\x1eopentelemetry.proto.metrics.v1\x1a*opentelemetry/proto/common/v1/common.proto\x1a.opentelemetry/proto/resource/v1/resource.proto\"X\n\x0bMetricsData\x12I\n\x10resource_metrics\x18\x01 \x03(\x0b\x32/.opentelemetry.proto.metrics.v1.ResourceMetrics\"\xaf\x01\n\x0fResourceMetrics\x12;\n\x08resource\x18\x01 \x01(\x0b\x32).opentelemetry.proto.resource.v1.Resource\x12\x43\n\rscope_metrics\x18\x02 \x03(\x0b\x32,.opentelemetry.proto.metrics.v1.ScopeMetrics\x12\x12\n\nschema_url\x18\x03 \x01(\tJ\x06\x08\xe8\x07\x10\xe9\x07\"\x9f\x01\n\x0cScopeMetrics\x12\x42\n\x05scope\x18\x01 \x01(\x0b\x32\x33.opentelemetry.proto.common.v1.InstrumentationScope\x12\x37\n\x07metrics\x18\x02 \x03(\x0b\x32&.opentelemetry.proto.metrics.v1.Metric\x12\x12\n\nschema_url\x18\x03 \x01(\t\"\xcd\x03\n\x06Metric\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\x0c\n\x04unit\x18\x03 \x01(\t\x12\x36\n\x05gauge\x18\x05 \x01(\x0b\x32%.opentelemetry.proto.metrics.v1.GaugeH\x00\x12\x32\n\x03sum\x18\x07 \x01(\x0b\x32#.opentelemetry.proto.metrics.v1.SumH\x00\x12>\n\thistogram\x18\t \x01(\x0b\x32).opentelemetry.proto.metrics.v1.HistogramH\x00\x12U\n\x15\x65xponential_histogram\x18\n \x01(\x0b\x32\x34.opentelemetry.proto.metrics.v1.ExponentialHistogramH\x00\x12:\n\x07summary\x18\x0b \x01(\x0b\x32\'.opentelemetry.proto.metrics.v1.SummaryH\x00\x12\x39\n\x08metadata\x18\x0c \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValueB\x06\n\x04\x64\x61taJ\x04\x08\x04\x10\x05J\x04\x08\x06\x10\x07J\x04\x08\x08\x10\t\"M\n\x05Gauge\x12\x44\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32/.opentelemetry.proto.metrics.v1.NumberDataPoint\"\xba\x01\n\x03Sum\x12\x44\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32/.opentelemetry.proto.metrics.v1.NumberDataPoint\x12W\n\x17\x61ggregation_temporality\x18\x02 \x01(\x0e\x32\x36.opentelemetry.proto.metrics.v1.AggregationTemporality\x12\x14\n\x0cis_monotonic\x18\x03 \x01(\x08\"\xad\x01\n\tHistogram\x12G\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32\x32.opentelemetry.proto.metrics.v1.HistogramDataPoint\x12W\n\x17\x61ggregation_temporality\x18\x02 \x01(\x0e\x32\x36.opentelemetry.proto.metrics.v1.AggregationTemporality\"\xc3\x01\n\x14\x45xponentialHistogram\x12R\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32=.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint\x12W\n\x17\x61ggregation_temporality\x18\x02 \x01(\x0e\x32\x36.opentelemetry.proto.metrics.v1.AggregationTemporality\"P\n\x07Summary\x12\x45\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32\x30.opentelemetry.proto.metrics.v1.SummaryDataPoint\"\x86\x02\n\x0fNumberDataPoint\x12;\n\nattributes\x18\x07 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x1c\n\x14start_time_unix_nano\x18\x02 \x01(\x06\x12\x16\n\x0etime_unix_nano\x18\x03 \x01(\x06\x12\x13\n\tas_double\x18\x04 \x01(\x01H\x00\x12\x10\n\x06\x61s_int\x18\x06 \x01(\x10H\x00\x12;\n\texemplars\x18\x05 \x03(\x0b\x32(.opentelemetry.proto.metrics.v1.Exemplar\x12\r\n\x05\x66lags\x18\x08 \x01(\rB\x07\n\x05valueJ\x04\x08\x01\x10\x02\"\xe6\x02\n\x12HistogramDataPoint\x12;\n\nattributes\x18\t \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x1c\n\x14start_time_unix_nano\x18\x02 \x01(\x06\x12\x16\n\x0etime_unix_nano\x18\x03 \x01(\x06\x12\r\n\x05\x63ount\x18\x04 \x01(\x06\x12\x10\n\x03sum\x18\x05 \x01(\x01H\x00\x88\x01\x01\x12\x15\n\rbucket_counts\x18\x06 \x03(\x06\x12\x17\n\x0f\x65xplicit_bounds\x18\x07 \x03(\x01\x12;\n\texemplars\x18\x08 \x03(\x0b\x32(.opentelemetry.proto.metrics.v1.Exemplar\x12\r\n\x05\x66lags\x18\n \x01(\r\x12\x10\n\x03min\x18\x0b \x01(\x01H\x01\x88\x01\x01\x12\x10\n\x03max\x18\x0c \x01(\x01H\x02\x88\x01\x01\x42\x06\n\x04_sumB\x06\n\x04_minB\x06\n\x04_maxJ\x04\x08\x01\x10\x02\"\xda\x04\n\x1d\x45xponentialHistogramDataPoint\x12;\n\nattributes\x18\x01 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x1c\n\x14start_time_unix_nano\x18\x02 \x01(\x06\x12\x16\n\x0etime_unix_nano\x18\x03 \x01(\x06\x12\r\n\x05\x63ount\x18\x04 \x01(\x06\x12\x10\n\x03sum\x18\x05 \x01(\x01H\x00\x88\x01\x01\x12\r\n\x05scale\x18\x06 \x01(\x11\x12\x12\n\nzero_count\x18\x07 \x01(\x06\x12W\n\x08positive\x18\x08 \x01(\x0b\x32\x45.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets\x12W\n\x08negative\x18\t \x01(\x0b\x32\x45.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets\x12\r\n\x05\x66lags\x18\n \x01(\r\x12;\n\texemplars\x18\x0b \x03(\x0b\x32(.opentelemetry.proto.metrics.v1.Exemplar\x12\x10\n\x03min\x18\x0c \x01(\x01H\x01\x88\x01\x01\x12\x10\n\x03max\x18\r \x01(\x01H\x02\x88\x01\x01\x12\x16\n\x0ezero_threshold\x18\x0e \x01(\x01\x1a\x30\n\x07\x42uckets\x12\x0e\n\x06offset\x18\x01 \x01(\x11\x12\x15\n\rbucket_counts\x18\x02 \x03(\x04\x42\x06\n\x04_sumB\x06\n\x04_minB\x06\n\x04_max\"\xc5\x02\n\x10SummaryDataPoint\x12;\n\nattributes\x18\x07 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x1c\n\x14start_time_unix_nano\x18\x02 \x01(\x06\x12\x16\n\x0etime_unix_nano\x18\x03 \x01(\x06\x12\r\n\x05\x63ount\x18\x04 \x01(\x06\x12\x0b\n\x03sum\x18\x05 \x01(\x01\x12Y\n\x0fquantile_values\x18\x06 \x03(\x0b\x32@.opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile\x12\r\n\x05\x66lags\x18\x08 \x01(\r\x1a\x32\n\x0fValueAtQuantile\x12\x10\n\x08quantile\x18\x01 \x01(\x01\x12\r\n\x05value\x18\x02 \x01(\x01J\x04\x08\x01\x10\x02\"\xc1\x01\n\x08\x45xemplar\x12\x44\n\x13\x66iltered_attributes\x18\x07 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x16\n\x0etime_unix_nano\x18\x02 \x01(\x06\x12\x13\n\tas_double\x18\x03 \x01(\x01H\x00\x12\x10\n\x06\x61s_int\x18\x06 \x01(\x10H\x00\x12\x0f\n\x07span_id\x18\x04 \x01(\x0c\x12\x10\n\x08trace_id\x18\x05 \x01(\x0c\x42\x07\n\x05valueJ\x04\x08\x01\x10\x02*\x8c\x01\n\x16\x41ggregationTemporality\x12\'\n#AGGREGATION_TEMPORALITY_UNSPECIFIED\x10\x00\x12!\n\x1d\x41GGREGATION_TEMPORALITY_DELTA\x10\x01\x12&\n\"AGGREGATION_TEMPORALITY_CUMULATIVE\x10\x02*^\n\x0e\x44\x61taPointFlags\x12\x1f\n\x1b\x44\x41TA_POINT_FLAGS_DO_NOT_USE\x10\x00\x12+\n\'DATA_POINT_FLAGS_NO_RECORDED_VALUE_MASK\x10\x01\x42\x7f\n!io.opentelemetry.proto.metrics.v1B\x0cMetricsProtoP\x01Z)go.opentelemetry.io/proto/otlp/metrics/v1\xaa\x02\x1eOpenTelemetry.Proto.Metrics.V1b\x06proto3" -pool = Google::Protobuf::DescriptorPool.generated_pool +pool = ::Google::Protobuf::DescriptorPool.generated_pool pool.add_serialized_file(descriptor_data) module Opentelemetry @@ -20,7 +20,6 @@ module V1 MetricsData = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.metrics.v1.MetricsData").msgclass ResourceMetrics = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.metrics.v1.ResourceMetrics").msgclass ScopeMetrics = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.metrics.v1.ScopeMetrics").msgclass - InstrumentationLibraryMetrics = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.metrics.v1.InstrumentationLibraryMetrics").msgclass Metric = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.metrics.v1.Metric").msgclass Gauge = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.metrics.v1.Gauge").msgclass Sum = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.metrics.v1.Sum").msgclass diff --git a/exporter/otlp-common/lib/opentelemetry/proto/resource/v1/resource_pb.rb b/exporter/otlp-common/lib/opentelemetry/proto/resource/v1/resource_pb.rb index a47c81d56f..4cf69174ca 100644 --- a/exporter/otlp-common/lib/opentelemetry/proto/resource/v1/resource_pb.rb +++ b/exporter/otlp-common/lib/opentelemetry/proto/resource/v1/resource_pb.rb @@ -7,9 +7,9 @@ require 'opentelemetry/proto/common/v1/common_pb' -descriptor_data = "\n.opentelemetry/proto/resource/v1/resource.proto\x12\x1fopentelemetry.proto.resource.v1\x1a*opentelemetry/proto/common/v1/common.proto\"i\n\x08Resource\x12;\n\nattributes\x18\x01 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\x02 \x01(\rBa\n\"io.opentelemetry.proto.resource.v1B\rResourceProtoP\x01Z*go.opentelemetry.io/proto/otlp/resource/v1b\x06proto3" +descriptor_data = "\n.opentelemetry/proto/resource/v1/resource.proto\x12\x1fopentelemetry.proto.resource.v1\x1a*opentelemetry/proto/common/v1/common.proto\"\xa8\x01\n\x08Resource\x12;\n\nattributes\x18\x01 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\x02 \x01(\r\x12=\n\x0b\x65ntity_refs\x18\x03 \x03(\x0b\x32(.opentelemetry.proto.common.v1.EntityRefB\x83\x01\n\"io.opentelemetry.proto.resource.v1B\rResourceProtoP\x01Z*go.opentelemetry.io/proto/otlp/resource/v1\xaa\x02\x1fOpenTelemetry.Proto.Resource.V1b\x06proto3" -pool = Google::Protobuf::DescriptorPool.generated_pool +pool = ::Google::Protobuf::DescriptorPool.generated_pool pool.add_serialized_file(descriptor_data) module Opentelemetry diff --git a/exporter/otlp-common/lib/opentelemetry/proto/trace/v1/trace_config_pb.rb b/exporter/otlp-common/lib/opentelemetry/proto/trace/v1/trace_config_pb.rb deleted file mode 100644 index 453d8b556f..0000000000 --- a/exporter/otlp-common/lib/opentelemetry/proto/trace/v1/trace_config_pb.rb +++ /dev/null @@ -1,25 +0,0 @@ -# frozen_string_literal: true -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: opentelemetry/proto/trace/v1/trace_config.proto - -require 'google/protobuf' - - -descriptor_data = "\n/opentelemetry/proto/trace/v1/trace_config.proto\x12\x1copentelemetry.proto.trace.v1\"\xc8\x03\n\x0bTraceConfig\x12I\n\x10\x63onstant_sampler\x18\x01 \x01(\x0b\x32-.opentelemetry.proto.trace.v1.ConstantSamplerH\x00\x12O\n\x14trace_id_ratio_based\x18\x02 \x01(\x0b\x32/.opentelemetry.proto.trace.v1.TraceIdRatioBasedH\x00\x12R\n\x15rate_limiting_sampler\x18\x03 \x01(\x0b\x32\x31.opentelemetry.proto.trace.v1.RateLimitingSamplerH\x00\x12 \n\x18max_number_of_attributes\x18\x04 \x01(\x03\x12\"\n\x1amax_number_of_timed_events\x18\x05 \x01(\x03\x12\x30\n(max_number_of_attributes_per_timed_event\x18\x06 \x01(\x03\x12\x1b\n\x13max_number_of_links\x18\x07 \x01(\x03\x12)\n!max_number_of_attributes_per_link\x18\x08 \x01(\x03\x42\t\n\x07sampler\"\xa9\x01\n\x0f\x43onstantSampler\x12P\n\x08\x64\x65\x63ision\x18\x01 \x01(\x0e\x32>.opentelemetry.proto.trace.v1.ConstantSampler.ConstantDecision\"D\n\x10\x43onstantDecision\x12\x0e\n\nALWAYS_OFF\x10\x00\x12\r\n\tALWAYS_ON\x10\x01\x12\x11\n\rALWAYS_PARENT\x10\x02\"*\n\x11TraceIdRatioBased\x12\x15\n\rsamplingRatio\x18\x01 \x01(\x01\"\"\n\x13RateLimitingSampler\x12\x0b\n\x03qps\x18\x01 \x01(\x03\x42h\n\x1fio.opentelemetry.proto.trace.v1B\x10TraceConfigProtoP\x01Z1go.opentelemetry.io/proto/otlp/collector/trace/v1b\x06proto3" - -pool = Google::Protobuf::DescriptorPool.generated_pool -pool.add_serialized_file(descriptor_data) - -module Opentelemetry - module Proto - module Trace - module V1 - TraceConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.TraceConfig").msgclass - ConstantSampler = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.ConstantSampler").msgclass - ConstantSampler::ConstantDecision = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.ConstantSampler.ConstantDecision").enummodule - TraceIdRatioBased = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.TraceIdRatioBased").msgclass - RateLimitingSampler = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.RateLimitingSampler").msgclass - end - end - end -end diff --git a/exporter/otlp-common/lib/opentelemetry/proto/trace/v1/trace_pb.rb b/exporter/otlp-common/lib/opentelemetry/proto/trace/v1/trace_pb.rb index b1ea7c5c0e..de0f03ac87 100644 --- a/exporter/otlp-common/lib/opentelemetry/proto/trace/v1/trace_pb.rb +++ b/exporter/otlp-common/lib/opentelemetry/proto/trace/v1/trace_pb.rb @@ -8,9 +8,9 @@ require 'opentelemetry/proto/resource/v1/resource_pb' -descriptor_data = "\n(opentelemetry/proto/trace/v1/trace.proto\x12\x1copentelemetry.proto.trace.v1\x1a*opentelemetry/proto/common/v1/common.proto\x1a.opentelemetry/proto/resource/v1/resource.proto\"Q\n\nTracesData\x12\x43\n\x0eresource_spans\x18\x01 \x03(\x0b\x32+.opentelemetry.proto.trace.v1.ResourceSpans\"\x86\x02\n\rResourceSpans\x12;\n\x08resource\x18\x01 \x01(\x0b\x32).opentelemetry.proto.resource.v1.Resource\x12=\n\x0bscope_spans\x18\x02 \x03(\x0b\x32(.opentelemetry.proto.trace.v1.ScopeSpans\x12\x65\n\x1dinstrumentation_library_spans\x18\xe8\x07 \x03(\x0b\x32\x39.opentelemetry.proto.trace.v1.InstrumentationLibrarySpansB\x02\x18\x01\x12\x12\n\nschema_url\x18\x03 \x01(\t\"\x97\x01\n\nScopeSpans\x12\x42\n\x05scope\x18\x01 \x01(\x0b\x32\x33.opentelemetry.proto.common.v1.InstrumentationScope\x12\x31\n\x05spans\x18\x02 \x03(\x0b\x32\".opentelemetry.proto.trace.v1.Span\x12\x12\n\nschema_url\x18\x03 \x01(\t\"\xc0\x01\n\x1bInstrumentationLibrarySpans\x12V\n\x17instrumentation_library\x18\x01 \x01(\x0b\x32\x35.opentelemetry.proto.common.v1.InstrumentationLibrary\x12\x31\n\x05spans\x18\x02 \x03(\x0b\x32\".opentelemetry.proto.trace.v1.Span\x12\x12\n\nschema_url\x18\x03 \x01(\t:\x02\x18\x01\"\xe6\x07\n\x04Span\x12\x10\n\x08trace_id\x18\x01 \x01(\x0c\x12\x0f\n\x07span_id\x18\x02 \x01(\x0c\x12\x13\n\x0btrace_state\x18\x03 \x01(\t\x12\x16\n\x0eparent_span_id\x18\x04 \x01(\x0c\x12\x0c\n\x04name\x18\x05 \x01(\t\x12\x39\n\x04kind\x18\x06 \x01(\x0e\x32+.opentelemetry.proto.trace.v1.Span.SpanKind\x12\x1c\n\x14start_time_unix_nano\x18\x07 \x01(\x06\x12\x1a\n\x12\x65nd_time_unix_nano\x18\x08 \x01(\x06\x12;\n\nattributes\x18\t \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\n \x01(\r\x12\x38\n\x06\x65vents\x18\x0b \x03(\x0b\x32(.opentelemetry.proto.trace.v1.Span.Event\x12\x1c\n\x14\x64ropped_events_count\x18\x0c \x01(\r\x12\x36\n\x05links\x18\r \x03(\x0b\x32\'.opentelemetry.proto.trace.v1.Span.Link\x12\x1b\n\x13\x64ropped_links_count\x18\x0e \x01(\r\x12\x34\n\x06status\x18\x0f \x01(\x0b\x32$.opentelemetry.proto.trace.v1.Status\x1a\x8c\x01\n\x05\x45vent\x12\x16\n\x0etime_unix_nano\x18\x01 \x01(\x06\x12\x0c\n\x04name\x18\x02 \x01(\t\x12;\n\nattributes\x18\x03 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\x04 \x01(\r\x1a\x9d\x01\n\x04Link\x12\x10\n\x08trace_id\x18\x01 \x01(\x0c\x12\x0f\n\x07span_id\x18\x02 \x01(\x0c\x12\x13\n\x0btrace_state\x18\x03 \x01(\t\x12;\n\nattributes\x18\x04 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\x05 \x01(\r\"\x99\x01\n\x08SpanKind\x12\x19\n\x15SPAN_KIND_UNSPECIFIED\x10\x00\x12\x16\n\x12SPAN_KIND_INTERNAL\x10\x01\x12\x14\n\x10SPAN_KIND_SERVER\x10\x02\x12\x14\n\x10SPAN_KIND_CLIENT\x10\x03\x12\x16\n\x12SPAN_KIND_PRODUCER\x10\x04\x12\x16\n\x12SPAN_KIND_CONSUMER\x10\x05\"\xae\x01\n\x06Status\x12\x0f\n\x07message\x18\x02 \x01(\t\x12=\n\x04\x63ode\x18\x03 \x01(\x0e\x32/.opentelemetry.proto.trace.v1.Status.StatusCode\"N\n\nStatusCode\x12\x15\n\x11STATUS_CODE_UNSET\x10\x00\x12\x12\n\x0eSTATUS_CODE_OK\x10\x01\x12\x15\n\x11STATUS_CODE_ERROR\x10\x02J\x04\x08\x01\x10\x02\x42X\n\x1fio.opentelemetry.proto.trace.v1B\nTraceProtoP\x01Z\'go.opentelemetry.io/proto/otlp/trace/v1b\x06proto3" +descriptor_data = "\n(opentelemetry/proto/trace/v1/trace.proto\x12\x1copentelemetry.proto.trace.v1\x1a*opentelemetry/proto/common/v1/common.proto\x1a.opentelemetry/proto/resource/v1/resource.proto\"Q\n\nTracesData\x12\x43\n\x0eresource_spans\x18\x01 \x03(\x0b\x32+.opentelemetry.proto.trace.v1.ResourceSpans\"\xa7\x01\n\rResourceSpans\x12;\n\x08resource\x18\x01 \x01(\x0b\x32).opentelemetry.proto.resource.v1.Resource\x12=\n\x0bscope_spans\x18\x02 \x03(\x0b\x32(.opentelemetry.proto.trace.v1.ScopeSpans\x12\x12\n\nschema_url\x18\x03 \x01(\tJ\x06\x08\xe8\x07\x10\xe9\x07\"\x97\x01\n\nScopeSpans\x12\x42\n\x05scope\x18\x01 \x01(\x0b\x32\x33.opentelemetry.proto.common.v1.InstrumentationScope\x12\x31\n\x05spans\x18\x02 \x03(\x0b\x32\".opentelemetry.proto.trace.v1.Span\x12\x12\n\nschema_url\x18\x03 \x01(\t\"\x84\x08\n\x04Span\x12\x10\n\x08trace_id\x18\x01 \x01(\x0c\x12\x0f\n\x07span_id\x18\x02 \x01(\x0c\x12\x13\n\x0btrace_state\x18\x03 \x01(\t\x12\x16\n\x0eparent_span_id\x18\x04 \x01(\x0c\x12\r\n\x05\x66lags\x18\x10 \x01(\x07\x12\x0c\n\x04name\x18\x05 \x01(\t\x12\x39\n\x04kind\x18\x06 \x01(\x0e\x32+.opentelemetry.proto.trace.v1.Span.SpanKind\x12\x1c\n\x14start_time_unix_nano\x18\x07 \x01(\x06\x12\x1a\n\x12\x65nd_time_unix_nano\x18\x08 \x01(\x06\x12;\n\nattributes\x18\t \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\n \x01(\r\x12\x38\n\x06\x65vents\x18\x0b \x03(\x0b\x32(.opentelemetry.proto.trace.v1.Span.Event\x12\x1c\n\x14\x64ropped_events_count\x18\x0c \x01(\r\x12\x36\n\x05links\x18\r \x03(\x0b\x32\'.opentelemetry.proto.trace.v1.Span.Link\x12\x1b\n\x13\x64ropped_links_count\x18\x0e \x01(\r\x12\x34\n\x06status\x18\x0f \x01(\x0b\x32$.opentelemetry.proto.trace.v1.Status\x1a\x8c\x01\n\x05\x45vent\x12\x16\n\x0etime_unix_nano\x18\x01 \x01(\x06\x12\x0c\n\x04name\x18\x02 \x01(\t\x12;\n\nattributes\x18\x03 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\x04 \x01(\r\x1a\xac\x01\n\x04Link\x12\x10\n\x08trace_id\x18\x01 \x01(\x0c\x12\x0f\n\x07span_id\x18\x02 \x01(\x0c\x12\x13\n\x0btrace_state\x18\x03 \x01(\t\x12;\n\nattributes\x18\x04 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\x05 \x01(\r\x12\r\n\x05\x66lags\x18\x06 \x01(\x07\"\x99\x01\n\x08SpanKind\x12\x19\n\x15SPAN_KIND_UNSPECIFIED\x10\x00\x12\x16\n\x12SPAN_KIND_INTERNAL\x10\x01\x12\x14\n\x10SPAN_KIND_SERVER\x10\x02\x12\x14\n\x10SPAN_KIND_CLIENT\x10\x03\x12\x16\n\x12SPAN_KIND_PRODUCER\x10\x04\x12\x16\n\x12SPAN_KIND_CONSUMER\x10\x05\"\xae\x01\n\x06Status\x12\x0f\n\x07message\x18\x02 \x01(\t\x12=\n\x04\x63ode\x18\x03 \x01(\x0e\x32/.opentelemetry.proto.trace.v1.Status.StatusCode\"N\n\nStatusCode\x12\x15\n\x11STATUS_CODE_UNSET\x10\x00\x12\x12\n\x0eSTATUS_CODE_OK\x10\x01\x12\x15\n\x11STATUS_CODE_ERROR\x10\x02J\x04\x08\x01\x10\x02*\x9c\x01\n\tSpanFlags\x12\x19\n\x15SPAN_FLAGS_DO_NOT_USE\x10\x00\x12 \n\x1bSPAN_FLAGS_TRACE_FLAGS_MASK\x10\xff\x01\x12*\n%SPAN_FLAGS_CONTEXT_HAS_IS_REMOTE_MASK\x10\x80\x02\x12&\n!SPAN_FLAGS_CONTEXT_IS_REMOTE_MASK\x10\x80\x04\x42w\n\x1fio.opentelemetry.proto.trace.v1B\nTraceProtoP\x01Z\'go.opentelemetry.io/proto/otlp/trace/v1\xaa\x02\x1cOpenTelemetry.Proto.Trace.V1b\x06proto3" -pool = Google::Protobuf::DescriptorPool.generated_pool +pool = ::Google::Protobuf::DescriptorPool.generated_pool pool.add_serialized_file(descriptor_data) module Opentelemetry @@ -20,13 +20,13 @@ module V1 TracesData = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.TracesData").msgclass ResourceSpans = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.ResourceSpans").msgclass ScopeSpans = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.ScopeSpans").msgclass - InstrumentationLibrarySpans = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.InstrumentationLibrarySpans").msgclass Span = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.Span").msgclass Span::Event = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.Span.Event").msgclass Span::Link = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.Span.Link").msgclass Span::SpanKind = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.Span.SpanKind").enummodule Status = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.Status").msgclass Status::StatusCode = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.Status.StatusCode").enummodule + SpanFlags = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.SpanFlags").enummodule end end end diff --git a/exporter/otlp-logs/Rakefile b/exporter/otlp-logs/Rakefile index 049c672b89..18848eb5bd 100644 --- a/exporter/otlp-logs/Rakefile +++ b/exporter/otlp-logs/Rakefile @@ -32,8 +32,8 @@ default_tasks = task default: default_tasks -# https://github.com/open-telemetry/opentelemetry-proto/tree/v0.20.0 -PROTO_VERSION = 'v0.20.0' +# https://github.com/open-telemetry/opentelemetry-proto/tree/v1.8.0 +PROTO_VERSION = 'v1.8.0' namespace :protobuf do desc 'Clean protobuf file' diff --git a/exporter/otlp-logs/lib/opentelemetry/proto/collector/logs/v1/logs_service_pb.rb b/exporter/otlp-logs/lib/opentelemetry/proto/collector/logs/v1/logs_service_pb.rb index cdefc01c2a..f1c0b1a23d 100644 --- a/exporter/otlp-logs/lib/opentelemetry/proto/collector/logs/v1/logs_service_pb.rb +++ b/exporter/otlp-logs/lib/opentelemetry/proto/collector/logs/v1/logs_service_pb.rb @@ -1,5 +1,4 @@ # frozen_string_literal: true - # Generated by the protocol buffer compiler. DO NOT EDIT! # source: opentelemetry/proto/collector/logs/v1/logs_service.proto @@ -7,9 +6,10 @@ require 'opentelemetry/proto/logs/v1/logs_pb' + descriptor_data = "\n8opentelemetry/proto/collector/logs/v1/logs_service.proto\x12%opentelemetry.proto.collector.logs.v1\x1a&opentelemetry/proto/logs/v1/logs.proto\"\\\n\x18\x45xportLogsServiceRequest\x12@\n\rresource_logs\x18\x01 \x03(\x0b\x32).opentelemetry.proto.logs.v1.ResourceLogs\"u\n\x19\x45xportLogsServiceResponse\x12X\n\x0fpartial_success\x18\x01 \x01(\x0b\x32?.opentelemetry.proto.collector.logs.v1.ExportLogsPartialSuccess\"O\n\x18\x45xportLogsPartialSuccess\x12\x1c\n\x14rejected_log_records\x18\x01 \x01(\x03\x12\x15\n\rerror_message\x18\x02 \x01(\t2\x9d\x01\n\x0bLogsService\x12\x8d\x01\n\x06\x45xport\x12?.opentelemetry.proto.collector.logs.v1.ExportLogsServiceRequest\x1a@.opentelemetry.proto.collector.logs.v1.ExportLogsServiceResponse\"\x00\x42\x98\x01\n(io.opentelemetry.proto.collector.logs.v1B\x10LogsServiceProtoP\x01Z0go.opentelemetry.io/proto/otlp/collector/logs/v1\xaa\x02%OpenTelemetry.Proto.Collector.Logs.V1b\x06proto3" -pool = Google::Protobuf::DescriptorPool.generated_pool +pool = ::Google::Protobuf::DescriptorPool.generated_pool pool.add_serialized_file(descriptor_data) module Opentelemetry @@ -17,9 +17,9 @@ module Proto module Collector module Logs module V1 - ExportLogsServiceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.collector.logs.v1.ExportLogsServiceRequest').msgclass - ExportLogsServiceResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.collector.logs.v1.ExportLogsServiceResponse').msgclass - ExportLogsPartialSuccess = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.collector.logs.v1.ExportLogsPartialSuccess').msgclass + ExportLogsServiceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.collector.logs.v1.ExportLogsServiceRequest").msgclass + ExportLogsServiceResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.collector.logs.v1.ExportLogsServiceResponse").msgclass + ExportLogsPartialSuccess = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.collector.logs.v1.ExportLogsPartialSuccess").msgclass end end end diff --git a/exporter/otlp-logs/lib/opentelemetry/proto/collector/metrics/v1/metrics_service_pb.rb b/exporter/otlp-logs/lib/opentelemetry/proto/collector/metrics/v1/metrics_service_pb.rb index 593d752e71..5159483185 100644 --- a/exporter/otlp-logs/lib/opentelemetry/proto/collector/metrics/v1/metrics_service_pb.rb +++ b/exporter/otlp-logs/lib/opentelemetry/proto/collector/metrics/v1/metrics_service_pb.rb @@ -1,5 +1,4 @@ # frozen_string_literal: true - # Generated by the protocol buffer compiler. DO NOT EDIT! # source: opentelemetry/proto/collector/metrics/v1/metrics_service.proto @@ -7,9 +6,10 @@ require 'opentelemetry/proto/metrics/v1/metrics_pb' + descriptor_data = "\n>opentelemetry/proto/collector/metrics/v1/metrics_service.proto\x12(opentelemetry.proto.collector.metrics.v1\x1a,opentelemetry/proto/metrics/v1/metrics.proto\"h\n\x1b\x45xportMetricsServiceRequest\x12I\n\x10resource_metrics\x18\x01 \x03(\x0b\x32/.opentelemetry.proto.metrics.v1.ResourceMetrics\"~\n\x1c\x45xportMetricsServiceResponse\x12^\n\x0fpartial_success\x18\x01 \x01(\x0b\x32\x45.opentelemetry.proto.collector.metrics.v1.ExportMetricsPartialSuccess\"R\n\x1b\x45xportMetricsPartialSuccess\x12\x1c\n\x14rejected_data_points\x18\x01 \x01(\x03\x12\x15\n\rerror_message\x18\x02 \x01(\t2\xac\x01\n\x0eMetricsService\x12\x99\x01\n\x06\x45xport\x12\x45.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceRequest\x1a\x46.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceResponse\"\x00\x42\xa4\x01\n+io.opentelemetry.proto.collector.metrics.v1B\x13MetricsServiceProtoP\x01Z3go.opentelemetry.io/proto/otlp/collector/metrics/v1\xaa\x02(OpenTelemetry.Proto.Collector.Metrics.V1b\x06proto3" -pool = Google::Protobuf::DescriptorPool.generated_pool +pool = ::Google::Protobuf::DescriptorPool.generated_pool pool.add_serialized_file(descriptor_data) module Opentelemetry @@ -17,9 +17,9 @@ module Proto module Collector module Metrics module V1 - ExportMetricsServiceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceRequest').msgclass - ExportMetricsServiceResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceResponse').msgclass - ExportMetricsPartialSuccess = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.collector.metrics.v1.ExportMetricsPartialSuccess').msgclass + ExportMetricsServiceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceRequest").msgclass + ExportMetricsServiceResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceResponse").msgclass + ExportMetricsPartialSuccess = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.collector.metrics.v1.ExportMetricsPartialSuccess").msgclass end end end diff --git a/exporter/otlp-logs/lib/opentelemetry/proto/collector/profiles/v1development/profiles_service_pb.rb b/exporter/otlp-logs/lib/opentelemetry/proto/collector/profiles/v1development/profiles_service_pb.rb new file mode 100644 index 0000000000..4290774652 --- /dev/null +++ b/exporter/otlp-logs/lib/opentelemetry/proto/collector/profiles/v1development/profiles_service_pb.rb @@ -0,0 +1,27 @@ +# frozen_string_literal: true +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: opentelemetry/proto/collector/profiles/v1development/profiles_service.proto + +require 'google/protobuf' + +require 'opentelemetry/proto/profiles/v1development/profiles_pb' + + +descriptor_data = "\nKopentelemetry/proto/collector/profiles/v1development/profiles_service.proto\x12\x34opentelemetry.proto.collector.profiles.v1development\x1a\x39opentelemetry/proto/profiles/v1development/profiles.proto\"\xcb\x01\n\x1c\x45xportProfilesServiceRequest\x12W\n\x11resource_profiles\x18\x01 \x03(\x0b\x32<.opentelemetry.proto.profiles.v1development.ResourceProfiles\x12R\n\ndictionary\x18\x02 \x01(\x0b\x32>.opentelemetry.proto.profiles.v1development.ProfilesDictionary\"\x8c\x01\n\x1d\x45xportProfilesServiceResponse\x12k\n\x0fpartial_success\x18\x01 \x01(\x0b\x32R.opentelemetry.proto.collector.profiles.v1development.ExportProfilesPartialSuccess\"P\n\x1c\x45xportProfilesPartialSuccess\x12\x19\n\x11rejected_profiles\x18\x01 \x01(\x03\x12\x15\n\rerror_message\x18\x02 \x01(\t2\xc7\x01\n\x0fProfilesService\x12\xb3\x01\n\x06\x45xport\x12R.opentelemetry.proto.collector.profiles.v1development.ExportProfilesServiceRequest\x1aS.opentelemetry.proto.collector.profiles.v1development.ExportProfilesServiceResponse\"\x00\x42\xc9\x01\n7io.opentelemetry.proto.collector.profiles.v1developmentB\x14ProfilesServiceProtoP\x01Z?go.opentelemetry.io/proto/otlp/collector/profiles/v1development\xaa\x02\x34OpenTelemetry.Proto.Collector.Profiles.V1Developmentb\x06proto3" + +pool = ::Google::Protobuf::DescriptorPool.generated_pool +pool.add_serialized_file(descriptor_data) + +module Opentelemetry + module Proto + module Collector + module Profiles + module V1development + ExportProfilesServiceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.collector.profiles.v1development.ExportProfilesServiceRequest").msgclass + ExportProfilesServiceResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.collector.profiles.v1development.ExportProfilesServiceResponse").msgclass + ExportProfilesPartialSuccess = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.collector.profiles.v1development.ExportProfilesPartialSuccess").msgclass + end + end + end + end +end diff --git a/exporter/otlp-logs/lib/opentelemetry/proto/collector/trace/v1/trace_service_pb.rb b/exporter/otlp-logs/lib/opentelemetry/proto/collector/trace/v1/trace_service_pb.rb index ae8226063c..bf85d665db 100644 --- a/exporter/otlp-logs/lib/opentelemetry/proto/collector/trace/v1/trace_service_pb.rb +++ b/exporter/otlp-logs/lib/opentelemetry/proto/collector/trace/v1/trace_service_pb.rb @@ -1,5 +1,4 @@ # frozen_string_literal: true - # Generated by the protocol buffer compiler. DO NOT EDIT! # source: opentelemetry/proto/collector/trace/v1/trace_service.proto @@ -7,9 +6,10 @@ require 'opentelemetry/proto/trace/v1/trace_pb' + descriptor_data = "\n:opentelemetry/proto/collector/trace/v1/trace_service.proto\x12&opentelemetry.proto.collector.trace.v1\x1a(opentelemetry/proto/trace/v1/trace.proto\"`\n\x19\x45xportTraceServiceRequest\x12\x43\n\x0eresource_spans\x18\x01 \x03(\x0b\x32+.opentelemetry.proto.trace.v1.ResourceSpans\"x\n\x1a\x45xportTraceServiceResponse\x12Z\n\x0fpartial_success\x18\x01 \x01(\x0b\x32\x41.opentelemetry.proto.collector.trace.v1.ExportTracePartialSuccess\"J\n\x19\x45xportTracePartialSuccess\x12\x16\n\x0erejected_spans\x18\x01 \x01(\x03\x12\x15\n\rerror_message\x18\x02 \x01(\t2\xa2\x01\n\x0cTraceService\x12\x91\x01\n\x06\x45xport\x12\x41.opentelemetry.proto.collector.trace.v1.ExportTraceServiceRequest\x1a\x42.opentelemetry.proto.collector.trace.v1.ExportTraceServiceResponse\"\x00\x42\x9c\x01\n)io.opentelemetry.proto.collector.trace.v1B\x11TraceServiceProtoP\x01Z1go.opentelemetry.io/proto/otlp/collector/trace/v1\xaa\x02&OpenTelemetry.Proto.Collector.Trace.V1b\x06proto3" -pool = Google::Protobuf::DescriptorPool.generated_pool +pool = ::Google::Protobuf::DescriptorPool.generated_pool pool.add_serialized_file(descriptor_data) module Opentelemetry @@ -17,9 +17,9 @@ module Proto module Collector module Trace module V1 - ExportTraceServiceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.collector.trace.v1.ExportTraceServiceRequest').msgclass - ExportTraceServiceResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.collector.trace.v1.ExportTraceServiceResponse').msgclass - ExportTracePartialSuccess = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.collector.trace.v1.ExportTracePartialSuccess').msgclass + ExportTraceServiceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.collector.trace.v1.ExportTraceServiceRequest").msgclass + ExportTraceServiceResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.collector.trace.v1.ExportTraceServiceResponse").msgclass + ExportTracePartialSuccess = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.collector.trace.v1.ExportTracePartialSuccess").msgclass end end end diff --git a/exporter/otlp-logs/lib/opentelemetry/proto/common/v1/common_pb.rb b/exporter/otlp-logs/lib/opentelemetry/proto/common/v1/common_pb.rb index 919181359c..6dc7114329 100644 --- a/exporter/otlp-logs/lib/opentelemetry/proto/common/v1/common_pb.rb +++ b/exporter/otlp-logs/lib/opentelemetry/proto/common/v1/common_pb.rb @@ -1,24 +1,25 @@ # frozen_string_literal: true - # Generated by the protocol buffer compiler. DO NOT EDIT! # source: opentelemetry/proto/common/v1/common.proto require 'google/protobuf' -descriptor_data = "\n*opentelemetry/proto/common/v1/common.proto\x12\x1dopentelemetry.proto.common.v1\"\x8c\x02\n\x08\x41nyValue\x12\x16\n\x0cstring_value\x18\x01 \x01(\tH\x00\x12\x14\n\nbool_value\x18\x02 \x01(\x08H\x00\x12\x13\n\tint_value\x18\x03 \x01(\x03H\x00\x12\x16\n\x0c\x64ouble_value\x18\x04 \x01(\x01H\x00\x12@\n\x0b\x61rray_value\x18\x05 \x01(\x0b\x32).opentelemetry.proto.common.v1.ArrayValueH\x00\x12\x43\n\x0ckvlist_value\x18\x06 \x01(\x0b\x32+.opentelemetry.proto.common.v1.KeyValueListH\x00\x12\x15\n\x0b\x62ytes_value\x18\x07 \x01(\x0cH\x00\x42\x07\n\x05value\"E\n\nArrayValue\x12\x37\n\x06values\x18\x01 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.AnyValue\"G\n\x0cKeyValueList\x12\x37\n\x06values\x18\x01 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\"O\n\x08KeyValue\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x36\n\x05value\x18\x02 \x01(\x0b\x32\'.opentelemetry.proto.common.v1.AnyValue\"\x94\x01\n\x14InstrumentationScope\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07version\x18\x02 \x01(\t\x12;\n\nattributes\x18\x03 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\x04 \x01(\rB{\n io.opentelemetry.proto.common.v1B\x0b\x43ommonProtoP\x01Z(go.opentelemetry.io/proto/otlp/common/v1\xaa\x02\x1dOpenTelemetry.Proto.Common.V1b\x06proto3" -pool = Google::Protobuf::DescriptorPool.generated_pool +descriptor_data = "\n*opentelemetry/proto/common/v1/common.proto\x12\x1dopentelemetry.proto.common.v1\"\x8c\x02\n\x08\x41nyValue\x12\x16\n\x0cstring_value\x18\x01 \x01(\tH\x00\x12\x14\n\nbool_value\x18\x02 \x01(\x08H\x00\x12\x13\n\tint_value\x18\x03 \x01(\x03H\x00\x12\x16\n\x0c\x64ouble_value\x18\x04 \x01(\x01H\x00\x12@\n\x0b\x61rray_value\x18\x05 \x01(\x0b\x32).opentelemetry.proto.common.v1.ArrayValueH\x00\x12\x43\n\x0ckvlist_value\x18\x06 \x01(\x0b\x32+.opentelemetry.proto.common.v1.KeyValueListH\x00\x12\x15\n\x0b\x62ytes_value\x18\x07 \x01(\x0cH\x00\x42\x07\n\x05value\"E\n\nArrayValue\x12\x37\n\x06values\x18\x01 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.AnyValue\"G\n\x0cKeyValueList\x12\x37\n\x06values\x18\x01 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\"O\n\x08KeyValue\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x36\n\x05value\x18\x02 \x01(\x0b\x32\'.opentelemetry.proto.common.v1.AnyValue\"\x94\x01\n\x14InstrumentationScope\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07version\x18\x02 \x01(\t\x12;\n\nattributes\x18\x03 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\x04 \x01(\r\"X\n\tEntityRef\x12\x12\n\nschema_url\x18\x01 \x01(\t\x12\x0c\n\x04type\x18\x02 \x01(\t\x12\x0f\n\x07id_keys\x18\x03 \x03(\t\x12\x18\n\x10\x64\x65scription_keys\x18\x04 \x03(\tB{\n io.opentelemetry.proto.common.v1B\x0b\x43ommonProtoP\x01Z(go.opentelemetry.io/proto/otlp/common/v1\xaa\x02\x1dOpenTelemetry.Proto.Common.V1b\x06proto3" + +pool = ::Google::Protobuf::DescriptorPool.generated_pool pool.add_serialized_file(descriptor_data) module Opentelemetry module Proto module Common module V1 - AnyValue = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.common.v1.AnyValue').msgclass - ArrayValue = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.common.v1.ArrayValue').msgclass - KeyValueList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.common.v1.KeyValueList').msgclass - KeyValue = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.common.v1.KeyValue').msgclass - InstrumentationScope = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.common.v1.InstrumentationScope').msgclass + AnyValue = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.common.v1.AnyValue").msgclass + ArrayValue = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.common.v1.ArrayValue").msgclass + KeyValueList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.common.v1.KeyValueList").msgclass + KeyValue = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.common.v1.KeyValue").msgclass + InstrumentationScope = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.common.v1.InstrumentationScope").msgclass + EntityRef = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.common.v1.EntityRef").msgclass end end end diff --git a/exporter/otlp-logs/lib/opentelemetry/proto/logs/v1/logs_pb.rb b/exporter/otlp-logs/lib/opentelemetry/proto/logs/v1/logs_pb.rb index 2e59dad95a..ce9b71580c 100644 --- a/exporter/otlp-logs/lib/opentelemetry/proto/logs/v1/logs_pb.rb +++ b/exporter/otlp-logs/lib/opentelemetry/proto/logs/v1/logs_pb.rb @@ -1,5 +1,4 @@ # frozen_string_literal: true - # Generated by the protocol buffer compiler. DO NOT EDIT! # source: opentelemetry/proto/logs/v1/logs.proto @@ -8,21 +7,22 @@ require 'opentelemetry/proto/common/v1/common_pb' require 'opentelemetry/proto/resource/v1/resource_pb' -descriptor_data = "\n&opentelemetry/proto/logs/v1/logs.proto\x12\x1bopentelemetry.proto.logs.v1\x1a*opentelemetry/proto/common/v1/common.proto\x1a.opentelemetry/proto/resource/v1/resource.proto\"L\n\x08LogsData\x12@\n\rresource_logs\x18\x01 \x03(\x0b\x32).opentelemetry.proto.logs.v1.ResourceLogs\"\xa3\x01\n\x0cResourceLogs\x12;\n\x08resource\x18\x01 \x01(\x0b\x32).opentelemetry.proto.resource.v1.Resource\x12:\n\nscope_logs\x18\x02 \x03(\x0b\x32&.opentelemetry.proto.logs.v1.ScopeLogs\x12\x12\n\nschema_url\x18\x03 \x01(\tJ\x06\x08\xe8\x07\x10\xe9\x07\"\xa0\x01\n\tScopeLogs\x12\x42\n\x05scope\x18\x01 \x01(\x0b\x32\x33.opentelemetry.proto.common.v1.InstrumentationScope\x12;\n\x0blog_records\x18\x02 \x03(\x0b\x32&.opentelemetry.proto.logs.v1.LogRecord\x12\x12\n\nschema_url\x18\x03 \x01(\t\"\xef\x02\n\tLogRecord\x12\x16\n\x0etime_unix_nano\x18\x01 \x01(\x06\x12\x1f\n\x17observed_time_unix_nano\x18\x0b \x01(\x06\x12\x44\n\x0fseverity_number\x18\x02 \x01(\x0e\x32+.opentelemetry.proto.logs.v1.SeverityNumber\x12\x15\n\rseverity_text\x18\x03 \x01(\t\x12\x35\n\x04\x62ody\x18\x05 \x01(\x0b\x32\'.opentelemetry.proto.common.v1.AnyValue\x12;\n\nattributes\x18\x06 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\x07 \x01(\r\x12\r\n\x05\x66lags\x18\x08 \x01(\x07\x12\x10\n\x08trace_id\x18\t \x01(\x0c\x12\x0f\n\x07span_id\x18\n \x01(\x0cJ\x04\x08\x04\x10\x05*\xc3\x05\n\x0eSeverityNumber\x12\x1f\n\x1bSEVERITY_NUMBER_UNSPECIFIED\x10\x00\x12\x19\n\x15SEVERITY_NUMBER_TRACE\x10\x01\x12\x1a\n\x16SEVERITY_NUMBER_TRACE2\x10\x02\x12\x1a\n\x16SEVERITY_NUMBER_TRACE3\x10\x03\x12\x1a\n\x16SEVERITY_NUMBER_TRACE4\x10\x04\x12\x19\n\x15SEVERITY_NUMBER_DEBUG\x10\x05\x12\x1a\n\x16SEVERITY_NUMBER_DEBUG2\x10\x06\x12\x1a\n\x16SEVERITY_NUMBER_DEBUG3\x10\x07\x12\x1a\n\x16SEVERITY_NUMBER_DEBUG4\x10\x08\x12\x18\n\x14SEVERITY_NUMBER_INFO\x10\t\x12\x19\n\x15SEVERITY_NUMBER_INFO2\x10\n\x12\x19\n\x15SEVERITY_NUMBER_INFO3\x10\x0b\x12\x19\n\x15SEVERITY_NUMBER_INFO4\x10\x0c\x12\x18\n\x14SEVERITY_NUMBER_WARN\x10\r\x12\x19\n\x15SEVERITY_NUMBER_WARN2\x10\x0e\x12\x19\n\x15SEVERITY_NUMBER_WARN3\x10\x0f\x12\x19\n\x15SEVERITY_NUMBER_WARN4\x10\x10\x12\x19\n\x15SEVERITY_NUMBER_ERROR\x10\x11\x12\x1a\n\x16SEVERITY_NUMBER_ERROR2\x10\x12\x12\x1a\n\x16SEVERITY_NUMBER_ERROR3\x10\x13\x12\x1a\n\x16SEVERITY_NUMBER_ERROR4\x10\x14\x12\x19\n\x15SEVERITY_NUMBER_FATAL\x10\x15\x12\x1a\n\x16SEVERITY_NUMBER_FATAL2\x10\x16\x12\x1a\n\x16SEVERITY_NUMBER_FATAL3\x10\x17\x12\x1a\n\x16SEVERITY_NUMBER_FATAL4\x10\x18*Y\n\x0eLogRecordFlags\x12\x1f\n\x1bLOG_RECORD_FLAGS_DO_NOT_USE\x10\x00\x12&\n!LOG_RECORD_FLAGS_TRACE_FLAGS_MASK\x10\xff\x01\x42s\n\x1eio.opentelemetry.proto.logs.v1B\tLogsProtoP\x01Z&go.opentelemetry.io/proto/otlp/logs/v1\xaa\x02\x1bOpenTelemetry.Proto.Logs.V1b\x06proto3" -pool = Google::Protobuf::DescriptorPool.generated_pool +descriptor_data = "\n&opentelemetry/proto/logs/v1/logs.proto\x12\x1bopentelemetry.proto.logs.v1\x1a*opentelemetry/proto/common/v1/common.proto\x1a.opentelemetry/proto/resource/v1/resource.proto\"L\n\x08LogsData\x12@\n\rresource_logs\x18\x01 \x03(\x0b\x32).opentelemetry.proto.logs.v1.ResourceLogs\"\xa3\x01\n\x0cResourceLogs\x12;\n\x08resource\x18\x01 \x01(\x0b\x32).opentelemetry.proto.resource.v1.Resource\x12:\n\nscope_logs\x18\x02 \x03(\x0b\x32&.opentelemetry.proto.logs.v1.ScopeLogs\x12\x12\n\nschema_url\x18\x03 \x01(\tJ\x06\x08\xe8\x07\x10\xe9\x07\"\xa0\x01\n\tScopeLogs\x12\x42\n\x05scope\x18\x01 \x01(\x0b\x32\x33.opentelemetry.proto.common.v1.InstrumentationScope\x12;\n\x0blog_records\x18\x02 \x03(\x0b\x32&.opentelemetry.proto.logs.v1.LogRecord\x12\x12\n\nschema_url\x18\x03 \x01(\t\"\x83\x03\n\tLogRecord\x12\x16\n\x0etime_unix_nano\x18\x01 \x01(\x06\x12\x1f\n\x17observed_time_unix_nano\x18\x0b \x01(\x06\x12\x44\n\x0fseverity_number\x18\x02 \x01(\x0e\x32+.opentelemetry.proto.logs.v1.SeverityNumber\x12\x15\n\rseverity_text\x18\x03 \x01(\t\x12\x35\n\x04\x62ody\x18\x05 \x01(\x0b\x32\'.opentelemetry.proto.common.v1.AnyValue\x12;\n\nattributes\x18\x06 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\x07 \x01(\r\x12\r\n\x05\x66lags\x18\x08 \x01(\x07\x12\x10\n\x08trace_id\x18\t \x01(\x0c\x12\x0f\n\x07span_id\x18\n \x01(\x0c\x12\x12\n\nevent_name\x18\x0c \x01(\tJ\x04\x08\x04\x10\x05*\xc3\x05\n\x0eSeverityNumber\x12\x1f\n\x1bSEVERITY_NUMBER_UNSPECIFIED\x10\x00\x12\x19\n\x15SEVERITY_NUMBER_TRACE\x10\x01\x12\x1a\n\x16SEVERITY_NUMBER_TRACE2\x10\x02\x12\x1a\n\x16SEVERITY_NUMBER_TRACE3\x10\x03\x12\x1a\n\x16SEVERITY_NUMBER_TRACE4\x10\x04\x12\x19\n\x15SEVERITY_NUMBER_DEBUG\x10\x05\x12\x1a\n\x16SEVERITY_NUMBER_DEBUG2\x10\x06\x12\x1a\n\x16SEVERITY_NUMBER_DEBUG3\x10\x07\x12\x1a\n\x16SEVERITY_NUMBER_DEBUG4\x10\x08\x12\x18\n\x14SEVERITY_NUMBER_INFO\x10\t\x12\x19\n\x15SEVERITY_NUMBER_INFO2\x10\n\x12\x19\n\x15SEVERITY_NUMBER_INFO3\x10\x0b\x12\x19\n\x15SEVERITY_NUMBER_INFO4\x10\x0c\x12\x18\n\x14SEVERITY_NUMBER_WARN\x10\r\x12\x19\n\x15SEVERITY_NUMBER_WARN2\x10\x0e\x12\x19\n\x15SEVERITY_NUMBER_WARN3\x10\x0f\x12\x19\n\x15SEVERITY_NUMBER_WARN4\x10\x10\x12\x19\n\x15SEVERITY_NUMBER_ERROR\x10\x11\x12\x1a\n\x16SEVERITY_NUMBER_ERROR2\x10\x12\x12\x1a\n\x16SEVERITY_NUMBER_ERROR3\x10\x13\x12\x1a\n\x16SEVERITY_NUMBER_ERROR4\x10\x14\x12\x19\n\x15SEVERITY_NUMBER_FATAL\x10\x15\x12\x1a\n\x16SEVERITY_NUMBER_FATAL2\x10\x16\x12\x1a\n\x16SEVERITY_NUMBER_FATAL3\x10\x17\x12\x1a\n\x16SEVERITY_NUMBER_FATAL4\x10\x18*Y\n\x0eLogRecordFlags\x12\x1f\n\x1bLOG_RECORD_FLAGS_DO_NOT_USE\x10\x00\x12&\n!LOG_RECORD_FLAGS_TRACE_FLAGS_MASK\x10\xff\x01\x42s\n\x1eio.opentelemetry.proto.logs.v1B\tLogsProtoP\x01Z&go.opentelemetry.io/proto/otlp/logs/v1\xaa\x02\x1bOpenTelemetry.Proto.Logs.V1b\x06proto3" + +pool = ::Google::Protobuf::DescriptorPool.generated_pool pool.add_serialized_file(descriptor_data) module Opentelemetry module Proto module Logs module V1 - LogsData = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.logs.v1.LogsData').msgclass - ResourceLogs = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.logs.v1.ResourceLogs').msgclass - ScopeLogs = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.logs.v1.ScopeLogs').msgclass - LogRecord = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.logs.v1.LogRecord').msgclass - SeverityNumber = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.logs.v1.SeverityNumber').enummodule - LogRecordFlags = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.logs.v1.LogRecordFlags').enummodule + LogsData = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.logs.v1.LogsData").msgclass + ResourceLogs = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.logs.v1.ResourceLogs").msgclass + ScopeLogs = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.logs.v1.ScopeLogs").msgclass + LogRecord = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.logs.v1.LogRecord").msgclass + SeverityNumber = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.logs.v1.SeverityNumber").enummodule + LogRecordFlags = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.logs.v1.LogRecordFlags").enummodule end end end diff --git a/exporter/otlp-logs/lib/opentelemetry/proto/metrics/v1/metrics_pb.rb b/exporter/otlp-logs/lib/opentelemetry/proto/metrics/v1/metrics_pb.rb index 8ce9521271..ced1dd9f8a 100644 --- a/exporter/otlp-logs/lib/opentelemetry/proto/metrics/v1/metrics_pb.rb +++ b/exporter/otlp-logs/lib/opentelemetry/proto/metrics/v1/metrics_pb.rb @@ -1,5 +1,4 @@ # frozen_string_literal: true - # Generated by the protocol buffer compiler. DO NOT EDIT! # source: opentelemetry/proto/metrics/v1/metrics.proto @@ -8,33 +7,34 @@ require 'opentelemetry/proto/common/v1/common_pb' require 'opentelemetry/proto/resource/v1/resource_pb' -descriptor_data = "\n,opentelemetry/proto/metrics/v1/metrics.proto\x12\x1eopentelemetry.proto.metrics.v1\x1a*opentelemetry/proto/common/v1/common.proto\x1a.opentelemetry/proto/resource/v1/resource.proto\"X\n\x0bMetricsData\x12I\n\x10resource_metrics\x18\x01 \x03(\x0b\x32/.opentelemetry.proto.metrics.v1.ResourceMetrics\"\xaf\x01\n\x0fResourceMetrics\x12;\n\x08resource\x18\x01 \x01(\x0b\x32).opentelemetry.proto.resource.v1.Resource\x12\x43\n\rscope_metrics\x18\x02 \x03(\x0b\x32,.opentelemetry.proto.metrics.v1.ScopeMetrics\x12\x12\n\nschema_url\x18\x03 \x01(\tJ\x06\x08\xe8\x07\x10\xe9\x07\"\x9f\x01\n\x0cScopeMetrics\x12\x42\n\x05scope\x18\x01 \x01(\x0b\x32\x33.opentelemetry.proto.common.v1.InstrumentationScope\x12\x37\n\x07metrics\x18\x02 \x03(\x0b\x32&.opentelemetry.proto.metrics.v1.Metric\x12\x12\n\nschema_url\x18\x03 \x01(\t\"\x92\x03\n\x06Metric\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\x0c\n\x04unit\x18\x03 \x01(\t\x12\x36\n\x05gauge\x18\x05 \x01(\x0b\x32%.opentelemetry.proto.metrics.v1.GaugeH\x00\x12\x32\n\x03sum\x18\x07 \x01(\x0b\x32#.opentelemetry.proto.metrics.v1.SumH\x00\x12>\n\thistogram\x18\t \x01(\x0b\x32).opentelemetry.proto.metrics.v1.HistogramH\x00\x12U\n\x15\x65xponential_histogram\x18\n \x01(\x0b\x32\x34.opentelemetry.proto.metrics.v1.ExponentialHistogramH\x00\x12:\n\x07summary\x18\x0b \x01(\x0b\x32\'.opentelemetry.proto.metrics.v1.SummaryH\x00\x42\x06\n\x04\x64\x61taJ\x04\x08\x04\x10\x05J\x04\x08\x06\x10\x07J\x04\x08\x08\x10\t\"M\n\x05Gauge\x12\x44\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32/.opentelemetry.proto.metrics.v1.NumberDataPoint\"\xba\x01\n\x03Sum\x12\x44\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32/.opentelemetry.proto.metrics.v1.NumberDataPoint\x12W\n\x17\x61ggregation_temporality\x18\x02 \x01(\x0e\x32\x36.opentelemetry.proto.metrics.v1.AggregationTemporality\x12\x14\n\x0cis_monotonic\x18\x03 \x01(\x08\"\xad\x01\n\tHistogram\x12G\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32\x32.opentelemetry.proto.metrics.v1.HistogramDataPoint\x12W\n\x17\x61ggregation_temporality\x18\x02 \x01(\x0e\x32\x36.opentelemetry.proto.metrics.v1.AggregationTemporality\"\xc3\x01\n\x14\x45xponentialHistogram\x12R\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32=.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint\x12W\n\x17\x61ggregation_temporality\x18\x02 \x01(\x0e\x32\x36.opentelemetry.proto.metrics.v1.AggregationTemporality\"P\n\x07Summary\x12\x45\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32\x30.opentelemetry.proto.metrics.v1.SummaryDataPoint\"\x86\x02\n\x0fNumberDataPoint\x12;\n\nattributes\x18\x07 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x1c\n\x14start_time_unix_nano\x18\x02 \x01(\x06\x12\x16\n\x0etime_unix_nano\x18\x03 \x01(\x06\x12\x13\n\tas_double\x18\x04 \x01(\x01H\x00\x12\x10\n\x06\x61s_int\x18\x06 \x01(\x10H\x00\x12;\n\texemplars\x18\x05 \x03(\x0b\x32(.opentelemetry.proto.metrics.v1.Exemplar\x12\r\n\x05\x66lags\x18\x08 \x01(\rB\x07\n\x05valueJ\x04\x08\x01\x10\x02\"\xe6\x02\n\x12HistogramDataPoint\x12;\n\nattributes\x18\t \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x1c\n\x14start_time_unix_nano\x18\x02 \x01(\x06\x12\x16\n\x0etime_unix_nano\x18\x03 \x01(\x06\x12\r\n\x05\x63ount\x18\x04 \x01(\x06\x12\x10\n\x03sum\x18\x05 \x01(\x01H\x00\x88\x01\x01\x12\x15\n\rbucket_counts\x18\x06 \x03(\x06\x12\x17\n\x0f\x65xplicit_bounds\x18\x07 \x03(\x01\x12;\n\texemplars\x18\x08 \x03(\x0b\x32(.opentelemetry.proto.metrics.v1.Exemplar\x12\r\n\x05\x66lags\x18\n \x01(\r\x12\x10\n\x03min\x18\x0b \x01(\x01H\x01\x88\x01\x01\x12\x10\n\x03max\x18\x0c \x01(\x01H\x02\x88\x01\x01\x42\x06\n\x04_sumB\x06\n\x04_minB\x06\n\x04_maxJ\x04\x08\x01\x10\x02\"\xda\x04\n\x1d\x45xponentialHistogramDataPoint\x12;\n\nattributes\x18\x01 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x1c\n\x14start_time_unix_nano\x18\x02 \x01(\x06\x12\x16\n\x0etime_unix_nano\x18\x03 \x01(\x06\x12\r\n\x05\x63ount\x18\x04 \x01(\x06\x12\x10\n\x03sum\x18\x05 \x01(\x01H\x00\x88\x01\x01\x12\r\n\x05scale\x18\x06 \x01(\x11\x12\x12\n\nzero_count\x18\x07 \x01(\x06\x12W\n\x08positive\x18\x08 \x01(\x0b\x32\x45.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets\x12W\n\x08negative\x18\t \x01(\x0b\x32\x45.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets\x12\r\n\x05\x66lags\x18\n \x01(\r\x12;\n\texemplars\x18\x0b \x03(\x0b\x32(.opentelemetry.proto.metrics.v1.Exemplar\x12\x10\n\x03min\x18\x0c \x01(\x01H\x01\x88\x01\x01\x12\x10\n\x03max\x18\r \x01(\x01H\x02\x88\x01\x01\x12\x16\n\x0ezero_threshold\x18\x0e \x01(\x01\x1a\x30\n\x07\x42uckets\x12\x0e\n\x06offset\x18\x01 \x01(\x11\x12\x15\n\rbucket_counts\x18\x02 \x03(\x04\x42\x06\n\x04_sumB\x06\n\x04_minB\x06\n\x04_max\"\xc5\x02\n\x10SummaryDataPoint\x12;\n\nattributes\x18\x07 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x1c\n\x14start_time_unix_nano\x18\x02 \x01(\x06\x12\x16\n\x0etime_unix_nano\x18\x03 \x01(\x06\x12\r\n\x05\x63ount\x18\x04 \x01(\x06\x12\x0b\n\x03sum\x18\x05 \x01(\x01\x12Y\n\x0fquantile_values\x18\x06 \x03(\x0b\x32@.opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile\x12\r\n\x05\x66lags\x18\x08 \x01(\r\x1a\x32\n\x0fValueAtQuantile\x12\x10\n\x08quantile\x18\x01 \x01(\x01\x12\r\n\x05value\x18\x02 \x01(\x01J\x04\x08\x01\x10\x02\"\xc1\x01\n\x08\x45xemplar\x12\x44\n\x13\x66iltered_attributes\x18\x07 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x16\n\x0etime_unix_nano\x18\x02 \x01(\x06\x12\x13\n\tas_double\x18\x03 \x01(\x01H\x00\x12\x10\n\x06\x61s_int\x18\x06 \x01(\x10H\x00\x12\x0f\n\x07span_id\x18\x04 \x01(\x0c\x12\x10\n\x08trace_id\x18\x05 \x01(\x0c\x42\x07\n\x05valueJ\x04\x08\x01\x10\x02*\x8c\x01\n\x16\x41ggregationTemporality\x12\'\n#AGGREGATION_TEMPORALITY_UNSPECIFIED\x10\x00\x12!\n\x1d\x41GGREGATION_TEMPORALITY_DELTA\x10\x01\x12&\n\"AGGREGATION_TEMPORALITY_CUMULATIVE\x10\x02*^\n\x0e\x44\x61taPointFlags\x12\x1f\n\x1b\x44\x41TA_POINT_FLAGS_DO_NOT_USE\x10\x00\x12+\n\'DATA_POINT_FLAGS_NO_RECORDED_VALUE_MASK\x10\x01\x42\x7f\n!io.opentelemetry.proto.metrics.v1B\x0cMetricsProtoP\x01Z)go.opentelemetry.io/proto/otlp/metrics/v1\xaa\x02\x1eOpenTelemetry.Proto.Metrics.V1b\x06proto3" -pool = Google::Protobuf::DescriptorPool.generated_pool +descriptor_data = "\n,opentelemetry/proto/metrics/v1/metrics.proto\x12\x1eopentelemetry.proto.metrics.v1\x1a*opentelemetry/proto/common/v1/common.proto\x1a.opentelemetry/proto/resource/v1/resource.proto\"X\n\x0bMetricsData\x12I\n\x10resource_metrics\x18\x01 \x03(\x0b\x32/.opentelemetry.proto.metrics.v1.ResourceMetrics\"\xaf\x01\n\x0fResourceMetrics\x12;\n\x08resource\x18\x01 \x01(\x0b\x32).opentelemetry.proto.resource.v1.Resource\x12\x43\n\rscope_metrics\x18\x02 \x03(\x0b\x32,.opentelemetry.proto.metrics.v1.ScopeMetrics\x12\x12\n\nschema_url\x18\x03 \x01(\tJ\x06\x08\xe8\x07\x10\xe9\x07\"\x9f\x01\n\x0cScopeMetrics\x12\x42\n\x05scope\x18\x01 \x01(\x0b\x32\x33.opentelemetry.proto.common.v1.InstrumentationScope\x12\x37\n\x07metrics\x18\x02 \x03(\x0b\x32&.opentelemetry.proto.metrics.v1.Metric\x12\x12\n\nschema_url\x18\x03 \x01(\t\"\xcd\x03\n\x06Metric\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\x0c\n\x04unit\x18\x03 \x01(\t\x12\x36\n\x05gauge\x18\x05 \x01(\x0b\x32%.opentelemetry.proto.metrics.v1.GaugeH\x00\x12\x32\n\x03sum\x18\x07 \x01(\x0b\x32#.opentelemetry.proto.metrics.v1.SumH\x00\x12>\n\thistogram\x18\t \x01(\x0b\x32).opentelemetry.proto.metrics.v1.HistogramH\x00\x12U\n\x15\x65xponential_histogram\x18\n \x01(\x0b\x32\x34.opentelemetry.proto.metrics.v1.ExponentialHistogramH\x00\x12:\n\x07summary\x18\x0b \x01(\x0b\x32\'.opentelemetry.proto.metrics.v1.SummaryH\x00\x12\x39\n\x08metadata\x18\x0c \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValueB\x06\n\x04\x64\x61taJ\x04\x08\x04\x10\x05J\x04\x08\x06\x10\x07J\x04\x08\x08\x10\t\"M\n\x05Gauge\x12\x44\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32/.opentelemetry.proto.metrics.v1.NumberDataPoint\"\xba\x01\n\x03Sum\x12\x44\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32/.opentelemetry.proto.metrics.v1.NumberDataPoint\x12W\n\x17\x61ggregation_temporality\x18\x02 \x01(\x0e\x32\x36.opentelemetry.proto.metrics.v1.AggregationTemporality\x12\x14\n\x0cis_monotonic\x18\x03 \x01(\x08\"\xad\x01\n\tHistogram\x12G\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32\x32.opentelemetry.proto.metrics.v1.HistogramDataPoint\x12W\n\x17\x61ggregation_temporality\x18\x02 \x01(\x0e\x32\x36.opentelemetry.proto.metrics.v1.AggregationTemporality\"\xc3\x01\n\x14\x45xponentialHistogram\x12R\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32=.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint\x12W\n\x17\x61ggregation_temporality\x18\x02 \x01(\x0e\x32\x36.opentelemetry.proto.metrics.v1.AggregationTemporality\"P\n\x07Summary\x12\x45\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32\x30.opentelemetry.proto.metrics.v1.SummaryDataPoint\"\x86\x02\n\x0fNumberDataPoint\x12;\n\nattributes\x18\x07 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x1c\n\x14start_time_unix_nano\x18\x02 \x01(\x06\x12\x16\n\x0etime_unix_nano\x18\x03 \x01(\x06\x12\x13\n\tas_double\x18\x04 \x01(\x01H\x00\x12\x10\n\x06\x61s_int\x18\x06 \x01(\x10H\x00\x12;\n\texemplars\x18\x05 \x03(\x0b\x32(.opentelemetry.proto.metrics.v1.Exemplar\x12\r\n\x05\x66lags\x18\x08 \x01(\rB\x07\n\x05valueJ\x04\x08\x01\x10\x02\"\xe6\x02\n\x12HistogramDataPoint\x12;\n\nattributes\x18\t \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x1c\n\x14start_time_unix_nano\x18\x02 \x01(\x06\x12\x16\n\x0etime_unix_nano\x18\x03 \x01(\x06\x12\r\n\x05\x63ount\x18\x04 \x01(\x06\x12\x10\n\x03sum\x18\x05 \x01(\x01H\x00\x88\x01\x01\x12\x15\n\rbucket_counts\x18\x06 \x03(\x06\x12\x17\n\x0f\x65xplicit_bounds\x18\x07 \x03(\x01\x12;\n\texemplars\x18\x08 \x03(\x0b\x32(.opentelemetry.proto.metrics.v1.Exemplar\x12\r\n\x05\x66lags\x18\n \x01(\r\x12\x10\n\x03min\x18\x0b \x01(\x01H\x01\x88\x01\x01\x12\x10\n\x03max\x18\x0c \x01(\x01H\x02\x88\x01\x01\x42\x06\n\x04_sumB\x06\n\x04_minB\x06\n\x04_maxJ\x04\x08\x01\x10\x02\"\xda\x04\n\x1d\x45xponentialHistogramDataPoint\x12;\n\nattributes\x18\x01 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x1c\n\x14start_time_unix_nano\x18\x02 \x01(\x06\x12\x16\n\x0etime_unix_nano\x18\x03 \x01(\x06\x12\r\n\x05\x63ount\x18\x04 \x01(\x06\x12\x10\n\x03sum\x18\x05 \x01(\x01H\x00\x88\x01\x01\x12\r\n\x05scale\x18\x06 \x01(\x11\x12\x12\n\nzero_count\x18\x07 \x01(\x06\x12W\n\x08positive\x18\x08 \x01(\x0b\x32\x45.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets\x12W\n\x08negative\x18\t \x01(\x0b\x32\x45.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets\x12\r\n\x05\x66lags\x18\n \x01(\r\x12;\n\texemplars\x18\x0b \x03(\x0b\x32(.opentelemetry.proto.metrics.v1.Exemplar\x12\x10\n\x03min\x18\x0c \x01(\x01H\x01\x88\x01\x01\x12\x10\n\x03max\x18\r \x01(\x01H\x02\x88\x01\x01\x12\x16\n\x0ezero_threshold\x18\x0e \x01(\x01\x1a\x30\n\x07\x42uckets\x12\x0e\n\x06offset\x18\x01 \x01(\x11\x12\x15\n\rbucket_counts\x18\x02 \x03(\x04\x42\x06\n\x04_sumB\x06\n\x04_minB\x06\n\x04_max\"\xc5\x02\n\x10SummaryDataPoint\x12;\n\nattributes\x18\x07 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x1c\n\x14start_time_unix_nano\x18\x02 \x01(\x06\x12\x16\n\x0etime_unix_nano\x18\x03 \x01(\x06\x12\r\n\x05\x63ount\x18\x04 \x01(\x06\x12\x0b\n\x03sum\x18\x05 \x01(\x01\x12Y\n\x0fquantile_values\x18\x06 \x03(\x0b\x32@.opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile\x12\r\n\x05\x66lags\x18\x08 \x01(\r\x1a\x32\n\x0fValueAtQuantile\x12\x10\n\x08quantile\x18\x01 \x01(\x01\x12\r\n\x05value\x18\x02 \x01(\x01J\x04\x08\x01\x10\x02\"\xc1\x01\n\x08\x45xemplar\x12\x44\n\x13\x66iltered_attributes\x18\x07 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x16\n\x0etime_unix_nano\x18\x02 \x01(\x06\x12\x13\n\tas_double\x18\x03 \x01(\x01H\x00\x12\x10\n\x06\x61s_int\x18\x06 \x01(\x10H\x00\x12\x0f\n\x07span_id\x18\x04 \x01(\x0c\x12\x10\n\x08trace_id\x18\x05 \x01(\x0c\x42\x07\n\x05valueJ\x04\x08\x01\x10\x02*\x8c\x01\n\x16\x41ggregationTemporality\x12\'\n#AGGREGATION_TEMPORALITY_UNSPECIFIED\x10\x00\x12!\n\x1d\x41GGREGATION_TEMPORALITY_DELTA\x10\x01\x12&\n\"AGGREGATION_TEMPORALITY_CUMULATIVE\x10\x02*^\n\x0e\x44\x61taPointFlags\x12\x1f\n\x1b\x44\x41TA_POINT_FLAGS_DO_NOT_USE\x10\x00\x12+\n\'DATA_POINT_FLAGS_NO_RECORDED_VALUE_MASK\x10\x01\x42\x7f\n!io.opentelemetry.proto.metrics.v1B\x0cMetricsProtoP\x01Z)go.opentelemetry.io/proto/otlp/metrics/v1\xaa\x02\x1eOpenTelemetry.Proto.Metrics.V1b\x06proto3" + +pool = ::Google::Protobuf::DescriptorPool.generated_pool pool.add_serialized_file(descriptor_data) module Opentelemetry module Proto module Metrics module V1 - MetricsData = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.metrics.v1.MetricsData').msgclass - ResourceMetrics = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.metrics.v1.ResourceMetrics').msgclass - ScopeMetrics = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.metrics.v1.ScopeMetrics').msgclass - Metric = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.metrics.v1.Metric').msgclass - Gauge = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.metrics.v1.Gauge').msgclass - Sum = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.metrics.v1.Sum').msgclass - Histogram = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.metrics.v1.Histogram').msgclass - ExponentialHistogram = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.metrics.v1.ExponentialHistogram').msgclass - Summary = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.metrics.v1.Summary').msgclass - NumberDataPoint = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.metrics.v1.NumberDataPoint').msgclass - HistogramDataPoint = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.metrics.v1.HistogramDataPoint').msgclass - ExponentialHistogramDataPoint = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint').msgclass - ExponentialHistogramDataPoint::Buckets = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets').msgclass - SummaryDataPoint = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.metrics.v1.SummaryDataPoint').msgclass - SummaryDataPoint::ValueAtQuantile = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile').msgclass - Exemplar = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.metrics.v1.Exemplar').msgclass - AggregationTemporality = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.metrics.v1.AggregationTemporality').enummodule - DataPointFlags = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.metrics.v1.DataPointFlags').enummodule + MetricsData = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.metrics.v1.MetricsData").msgclass + ResourceMetrics = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.metrics.v1.ResourceMetrics").msgclass + ScopeMetrics = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.metrics.v1.ScopeMetrics").msgclass + Metric = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.metrics.v1.Metric").msgclass + Gauge = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.metrics.v1.Gauge").msgclass + Sum = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.metrics.v1.Sum").msgclass + Histogram = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.metrics.v1.Histogram").msgclass + ExponentialHistogram = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.metrics.v1.ExponentialHistogram").msgclass + Summary = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.metrics.v1.Summary").msgclass + NumberDataPoint = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.metrics.v1.NumberDataPoint").msgclass + HistogramDataPoint = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.metrics.v1.HistogramDataPoint").msgclass + ExponentialHistogramDataPoint = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint").msgclass + ExponentialHistogramDataPoint::Buckets = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets").msgclass + SummaryDataPoint = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.metrics.v1.SummaryDataPoint").msgclass + SummaryDataPoint::ValueAtQuantile = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile").msgclass + Exemplar = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.metrics.v1.Exemplar").msgclass + AggregationTemporality = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.metrics.v1.AggregationTemporality").enummodule + DataPointFlags = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.metrics.v1.DataPointFlags").enummodule end end end diff --git a/exporter/otlp-logs/lib/opentelemetry/proto/profiles/v1development/profiles_pb.rb b/exporter/otlp-logs/lib/opentelemetry/proto/profiles/v1development/profiles_pb.rb new file mode 100644 index 0000000000..434b831d8d --- /dev/null +++ b/exporter/otlp-logs/lib/opentelemetry/proto/profiles/v1development/profiles_pb.rb @@ -0,0 +1,38 @@ +# frozen_string_literal: true +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: opentelemetry/proto/profiles/v1development/profiles.proto + +require 'google/protobuf' + +require 'opentelemetry/proto/common/v1/common_pb' +require 'opentelemetry/proto/resource/v1/resource_pb' + + +descriptor_data = "\n9opentelemetry/proto/profiles/v1development/profiles.proto\x12*opentelemetry.proto.profiles.v1development\x1a*opentelemetry/proto/common/v1/common.proto\x1a.opentelemetry/proto/resource/v1/resource.proto\"\xf6\x03\n\x12ProfilesDictionary\x12J\n\rmapping_table\x18\x01 \x03(\x0b\x32\x33.opentelemetry.proto.profiles.v1development.Mapping\x12L\n\x0elocation_table\x18\x02 \x03(\x0b\x32\x34.opentelemetry.proto.profiles.v1development.Location\x12L\n\x0e\x66unction_table\x18\x03 \x03(\x0b\x32\x34.opentelemetry.proto.profiles.v1development.Function\x12\x44\n\nlink_table\x18\x04 \x03(\x0b\x32\x30.opentelemetry.proto.profiles.v1development.Link\x12\x14\n\x0cstring_table\x18\x05 \x03(\t\x12T\n\x0f\x61ttribute_table\x18\x06 \x03(\x0b\x32;.opentelemetry.proto.profiles.v1development.KeyValueAndUnit\x12\x46\n\x0bstack_table\x18\x07 \x03(\x0b\x32\x31.opentelemetry.proto.profiles.v1development.Stack\"\xbb\x01\n\x0cProfilesData\x12W\n\x11resource_profiles\x18\x01 \x03(\x0b\x32<.opentelemetry.proto.profiles.v1development.ResourceProfiles\x12R\n\ndictionary\x18\x02 \x01(\x0b\x32>.opentelemetry.proto.profiles.v1development.ProfilesDictionary\"\xbe\x01\n\x10ResourceProfiles\x12;\n\x08resource\x18\x01 \x01(\x0b\x32).opentelemetry.proto.resource.v1.Resource\x12Q\n\x0escope_profiles\x18\x02 \x03(\x0b\x32\x39.opentelemetry.proto.profiles.v1development.ScopeProfiles\x12\x12\n\nschema_url\x18\x03 \x01(\tJ\x06\x08\xe8\x07\x10\xe9\x07\"\xae\x01\n\rScopeProfiles\x12\x42\n\x05scope\x18\x01 \x01(\x0b\x32\x33.opentelemetry.proto.common.v1.InstrumentationScope\x12\x45\n\x08profiles\x18\x02 \x03(\x0b\x32\x33.opentelemetry.proto.profiles.v1development.Profile\x12\x12\n\nschema_url\x18\x03 \x01(\t\"\xcc\x03\n\x07Profile\x12J\n\x0bsample_type\x18\x01 \x01(\x0b\x32\x35.opentelemetry.proto.profiles.v1development.ValueType\x12\x42\n\x06sample\x18\x02 \x03(\x0b\x32\x32.opentelemetry.proto.profiles.v1development.Sample\x12\x16\n\x0etime_unix_nano\x18\x03 \x01(\x06\x12\x15\n\rduration_nano\x18\x04 \x01(\x04\x12J\n\x0bperiod_type\x18\x05 \x01(\x0b\x32\x35.opentelemetry.proto.profiles.v1development.ValueType\x12\x0e\n\x06period\x18\x06 \x01(\x03\x12\x1a\n\x12\x63omment_strindices\x18\x07 \x03(\x05\x12\x12\n\nprofile_id\x18\x08 \x01(\x0c\x12 \n\x18\x64ropped_attributes_count\x18\t \x01(\r\x12\x1f\n\x17original_payload_format\x18\n \x01(\t\x12\x18\n\x10original_payload\x18\x0b \x01(\x0c\x12\x19\n\x11\x61ttribute_indices\x18\x0c \x03(\x05\")\n\x04Link\x12\x10\n\x08trace_id\x18\x01 \x01(\x0c\x12\x0f\n\x07span_id\x18\x02 \x01(\x0c\"\x9e\x01\n\tValueType\x12\x15\n\rtype_strindex\x18\x01 \x01(\x05\x12\x15\n\runit_strindex\x18\x02 \x01(\x05\x12\x63\n\x17\x61ggregation_temporality\x18\x03 \x01(\x0e\x32\x42.opentelemetry.proto.profiles.v1development.AggregationTemporality\"z\n\x06Sample\x12\x13\n\x0bstack_index\x18\x01 \x01(\x05\x12\x0e\n\x06values\x18\x02 \x03(\x03\x12\x19\n\x11\x61ttribute_indices\x18\x03 \x03(\x05\x12\x12\n\nlink_index\x18\x04 \x01(\x05\x12\x1c\n\x14timestamps_unix_nano\x18\x05 \x03(\x06\"\x80\x01\n\x07Mapping\x12\x14\n\x0cmemory_start\x18\x01 \x01(\x04\x12\x14\n\x0cmemory_limit\x18\x02 \x01(\x04\x12\x13\n\x0b\x66ile_offset\x18\x03 \x01(\x04\x12\x19\n\x11\x66ilename_strindex\x18\x04 \x01(\x05\x12\x19\n\x11\x61ttribute_indices\x18\x05 \x03(\x05\"!\n\x05Stack\x12\x18\n\x10location_indices\x18\x01 \x03(\x05\"\x8d\x01\n\x08Location\x12\x15\n\rmapping_index\x18\x01 \x01(\x05\x12\x0f\n\x07\x61\x64\x64ress\x18\x02 \x01(\x04\x12>\n\x04line\x18\x03 \x03(\x0b\x32\x30.opentelemetry.proto.profiles.v1development.Line\x12\x19\n\x11\x61ttribute_indices\x18\x04 \x03(\x05\"<\n\x04Line\x12\x16\n\x0e\x66unction_index\x18\x01 \x01(\x05\x12\x0c\n\x04line\x18\x02 \x01(\x03\x12\x0e\n\x06\x63olumn\x18\x03 \x01(\x03\"n\n\x08\x46unction\x12\x15\n\rname_strindex\x18\x01 \x01(\x05\x12\x1c\n\x14system_name_strindex\x18\x02 \x01(\x05\x12\x19\n\x11\x66ilename_strindex\x18\x03 \x01(\x05\x12\x12\n\nstart_line\x18\x04 \x01(\x03\"v\n\x0fKeyValueAndUnit\x12\x14\n\x0ckey_strindex\x18\x01 \x01(\x05\x12\x36\n\x05value\x18\x02 \x01(\x0b\x32\'.opentelemetry.proto.common.v1.AnyValue\x12\x15\n\runit_strindex\x18\x03 \x01(\x05*\x8c\x01\n\x16\x41ggregationTemporality\x12\'\n#AGGREGATION_TEMPORALITY_UNSPECIFIED\x10\x00\x12!\n\x1d\x41GGREGATION_TEMPORALITY_DELTA\x10\x01\x12&\n\"AGGREGATION_TEMPORALITY_CUMULATIVE\x10\x02\x42\xa4\x01\n-io.opentelemetry.proto.profiles.v1developmentB\rProfilesProtoP\x01Z5go.opentelemetry.io/proto/otlp/profiles/v1development\xaa\x02*OpenTelemetry.Proto.Profiles.V1Developmentb\x06proto3" + +pool = ::Google::Protobuf::DescriptorPool.generated_pool +pool.add_serialized_file(descriptor_data) + +module Opentelemetry + module Proto + module Profiles + module V1development + ProfilesDictionary = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.ProfilesDictionary").msgclass + ProfilesData = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.ProfilesData").msgclass + ResourceProfiles = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.ResourceProfiles").msgclass + ScopeProfiles = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.ScopeProfiles").msgclass + Profile = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.Profile").msgclass + Link = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.Link").msgclass + ValueType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.ValueType").msgclass + Sample = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.Sample").msgclass + Mapping = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.Mapping").msgclass + Stack = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.Stack").msgclass + Location = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.Location").msgclass + Line = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.Line").msgclass + Function = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.Function").msgclass + KeyValueAndUnit = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.KeyValueAndUnit").msgclass + AggregationTemporality = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.AggregationTemporality").enummodule + end + end + end +end diff --git a/exporter/otlp-logs/lib/opentelemetry/proto/resource/v1/resource_pb.rb b/exporter/otlp-logs/lib/opentelemetry/proto/resource/v1/resource_pb.rb index adfb9add9f..4cf69174ca 100644 --- a/exporter/otlp-logs/lib/opentelemetry/proto/resource/v1/resource_pb.rb +++ b/exporter/otlp-logs/lib/opentelemetry/proto/resource/v1/resource_pb.rb @@ -1,5 +1,4 @@ # frozen_string_literal: true - # Generated by the protocol buffer compiler. DO NOT EDIT! # source: opentelemetry/proto/resource/v1/resource.proto @@ -7,16 +6,17 @@ require 'opentelemetry/proto/common/v1/common_pb' -descriptor_data = "\n.opentelemetry/proto/resource/v1/resource.proto\x12\x1fopentelemetry.proto.resource.v1\x1a*opentelemetry/proto/common/v1/common.proto\"i\n\x08Resource\x12;\n\nattributes\x18\x01 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\x02 \x01(\rB\x83\x01\n\"io.opentelemetry.proto.resource.v1B\rResourceProtoP\x01Z*go.opentelemetry.io/proto/otlp/resource/v1\xaa\x02\x1fOpenTelemetry.Proto.Resource.V1b\x06proto3" -pool = Google::Protobuf::DescriptorPool.generated_pool +descriptor_data = "\n.opentelemetry/proto/resource/v1/resource.proto\x12\x1fopentelemetry.proto.resource.v1\x1a*opentelemetry/proto/common/v1/common.proto\"\xa8\x01\n\x08Resource\x12;\n\nattributes\x18\x01 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\x02 \x01(\r\x12=\n\x0b\x65ntity_refs\x18\x03 \x03(\x0b\x32(.opentelemetry.proto.common.v1.EntityRefB\x83\x01\n\"io.opentelemetry.proto.resource.v1B\rResourceProtoP\x01Z*go.opentelemetry.io/proto/otlp/resource/v1\xaa\x02\x1fOpenTelemetry.Proto.Resource.V1b\x06proto3" + +pool = ::Google::Protobuf::DescriptorPool.generated_pool pool.add_serialized_file(descriptor_data) module Opentelemetry module Proto module Resource module V1 - Resource = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.resource.v1.Resource').msgclass + Resource = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.resource.v1.Resource").msgclass end end end diff --git a/exporter/otlp-logs/lib/opentelemetry/proto/trace/v1/trace_pb.rb b/exporter/otlp-logs/lib/opentelemetry/proto/trace/v1/trace_pb.rb index 43b719989c..de0f03ac87 100644 --- a/exporter/otlp-logs/lib/opentelemetry/proto/trace/v1/trace_pb.rb +++ b/exporter/otlp-logs/lib/opentelemetry/proto/trace/v1/trace_pb.rb @@ -1,5 +1,4 @@ # frozen_string_literal: true - # Generated by the protocol buffer compiler. DO NOT EDIT! # source: opentelemetry/proto/trace/v1/trace.proto @@ -8,24 +7,26 @@ require 'opentelemetry/proto/common/v1/common_pb' require 'opentelemetry/proto/resource/v1/resource_pb' -descriptor_data = "\n(opentelemetry/proto/trace/v1/trace.proto\x12\x1copentelemetry.proto.trace.v1\x1a*opentelemetry/proto/common/v1/common.proto\x1a.opentelemetry/proto/resource/v1/resource.proto\"Q\n\nTracesData\x12\x43\n\x0eresource_spans\x18\x01 \x03(\x0b\x32+.opentelemetry.proto.trace.v1.ResourceSpans\"\xa7\x01\n\rResourceSpans\x12;\n\x08resource\x18\x01 \x01(\x0b\x32).opentelemetry.proto.resource.v1.Resource\x12=\n\x0bscope_spans\x18\x02 \x03(\x0b\x32(.opentelemetry.proto.trace.v1.ScopeSpans\x12\x12\n\nschema_url\x18\x03 \x01(\tJ\x06\x08\xe8\x07\x10\xe9\x07\"\x97\x01\n\nScopeSpans\x12\x42\n\x05scope\x18\x01 \x01(\x0b\x32\x33.opentelemetry.proto.common.v1.InstrumentationScope\x12\x31\n\x05spans\x18\x02 \x03(\x0b\x32\".opentelemetry.proto.trace.v1.Span\x12\x12\n\nschema_url\x18\x03 \x01(\t\"\xe6\x07\n\x04Span\x12\x10\n\x08trace_id\x18\x01 \x01(\x0c\x12\x0f\n\x07span_id\x18\x02 \x01(\x0c\x12\x13\n\x0btrace_state\x18\x03 \x01(\t\x12\x16\n\x0eparent_span_id\x18\x04 \x01(\x0c\x12\x0c\n\x04name\x18\x05 \x01(\t\x12\x39\n\x04kind\x18\x06 \x01(\x0e\x32+.opentelemetry.proto.trace.v1.Span.SpanKind\x12\x1c\n\x14start_time_unix_nano\x18\x07 \x01(\x06\x12\x1a\n\x12\x65nd_time_unix_nano\x18\x08 \x01(\x06\x12;\n\nattributes\x18\t \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\n \x01(\r\x12\x38\n\x06\x65vents\x18\x0b \x03(\x0b\x32(.opentelemetry.proto.trace.v1.Span.Event\x12\x1c\n\x14\x64ropped_events_count\x18\x0c \x01(\r\x12\x36\n\x05links\x18\r \x03(\x0b\x32\'.opentelemetry.proto.trace.v1.Span.Link\x12\x1b\n\x13\x64ropped_links_count\x18\x0e \x01(\r\x12\x34\n\x06status\x18\x0f \x01(\x0b\x32$.opentelemetry.proto.trace.v1.Status\x1a\x8c\x01\n\x05\x45vent\x12\x16\n\x0etime_unix_nano\x18\x01 \x01(\x06\x12\x0c\n\x04name\x18\x02 \x01(\t\x12;\n\nattributes\x18\x03 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\x04 \x01(\r\x1a\x9d\x01\n\x04Link\x12\x10\n\x08trace_id\x18\x01 \x01(\x0c\x12\x0f\n\x07span_id\x18\x02 \x01(\x0c\x12\x13\n\x0btrace_state\x18\x03 \x01(\t\x12;\n\nattributes\x18\x04 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\x05 \x01(\r\"\x99\x01\n\x08SpanKind\x12\x19\n\x15SPAN_KIND_UNSPECIFIED\x10\x00\x12\x16\n\x12SPAN_KIND_INTERNAL\x10\x01\x12\x14\n\x10SPAN_KIND_SERVER\x10\x02\x12\x14\n\x10SPAN_KIND_CLIENT\x10\x03\x12\x16\n\x12SPAN_KIND_PRODUCER\x10\x04\x12\x16\n\x12SPAN_KIND_CONSUMER\x10\x05\"\xae\x01\n\x06Status\x12\x0f\n\x07message\x18\x02 \x01(\t\x12=\n\x04\x63ode\x18\x03 \x01(\x0e\x32/.opentelemetry.proto.trace.v1.Status.StatusCode\"N\n\nStatusCode\x12\x15\n\x11STATUS_CODE_UNSET\x10\x00\x12\x12\n\x0eSTATUS_CODE_OK\x10\x01\x12\x15\n\x11STATUS_CODE_ERROR\x10\x02J\x04\x08\x01\x10\x02\x42w\n\x1fio.opentelemetry.proto.trace.v1B\nTraceProtoP\x01Z\'go.opentelemetry.io/proto/otlp/trace/v1\xaa\x02\x1cOpenTelemetry.Proto.Trace.V1b\x06proto3" -pool = Google::Protobuf::DescriptorPool.generated_pool +descriptor_data = "\n(opentelemetry/proto/trace/v1/trace.proto\x12\x1copentelemetry.proto.trace.v1\x1a*opentelemetry/proto/common/v1/common.proto\x1a.opentelemetry/proto/resource/v1/resource.proto\"Q\n\nTracesData\x12\x43\n\x0eresource_spans\x18\x01 \x03(\x0b\x32+.opentelemetry.proto.trace.v1.ResourceSpans\"\xa7\x01\n\rResourceSpans\x12;\n\x08resource\x18\x01 \x01(\x0b\x32).opentelemetry.proto.resource.v1.Resource\x12=\n\x0bscope_spans\x18\x02 \x03(\x0b\x32(.opentelemetry.proto.trace.v1.ScopeSpans\x12\x12\n\nschema_url\x18\x03 \x01(\tJ\x06\x08\xe8\x07\x10\xe9\x07\"\x97\x01\n\nScopeSpans\x12\x42\n\x05scope\x18\x01 \x01(\x0b\x32\x33.opentelemetry.proto.common.v1.InstrumentationScope\x12\x31\n\x05spans\x18\x02 \x03(\x0b\x32\".opentelemetry.proto.trace.v1.Span\x12\x12\n\nschema_url\x18\x03 \x01(\t\"\x84\x08\n\x04Span\x12\x10\n\x08trace_id\x18\x01 \x01(\x0c\x12\x0f\n\x07span_id\x18\x02 \x01(\x0c\x12\x13\n\x0btrace_state\x18\x03 \x01(\t\x12\x16\n\x0eparent_span_id\x18\x04 \x01(\x0c\x12\r\n\x05\x66lags\x18\x10 \x01(\x07\x12\x0c\n\x04name\x18\x05 \x01(\t\x12\x39\n\x04kind\x18\x06 \x01(\x0e\x32+.opentelemetry.proto.trace.v1.Span.SpanKind\x12\x1c\n\x14start_time_unix_nano\x18\x07 \x01(\x06\x12\x1a\n\x12\x65nd_time_unix_nano\x18\x08 \x01(\x06\x12;\n\nattributes\x18\t \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\n \x01(\r\x12\x38\n\x06\x65vents\x18\x0b \x03(\x0b\x32(.opentelemetry.proto.trace.v1.Span.Event\x12\x1c\n\x14\x64ropped_events_count\x18\x0c \x01(\r\x12\x36\n\x05links\x18\r \x03(\x0b\x32\'.opentelemetry.proto.trace.v1.Span.Link\x12\x1b\n\x13\x64ropped_links_count\x18\x0e \x01(\r\x12\x34\n\x06status\x18\x0f \x01(\x0b\x32$.opentelemetry.proto.trace.v1.Status\x1a\x8c\x01\n\x05\x45vent\x12\x16\n\x0etime_unix_nano\x18\x01 \x01(\x06\x12\x0c\n\x04name\x18\x02 \x01(\t\x12;\n\nattributes\x18\x03 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\x04 \x01(\r\x1a\xac\x01\n\x04Link\x12\x10\n\x08trace_id\x18\x01 \x01(\x0c\x12\x0f\n\x07span_id\x18\x02 \x01(\x0c\x12\x13\n\x0btrace_state\x18\x03 \x01(\t\x12;\n\nattributes\x18\x04 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\x05 \x01(\r\x12\r\n\x05\x66lags\x18\x06 \x01(\x07\"\x99\x01\n\x08SpanKind\x12\x19\n\x15SPAN_KIND_UNSPECIFIED\x10\x00\x12\x16\n\x12SPAN_KIND_INTERNAL\x10\x01\x12\x14\n\x10SPAN_KIND_SERVER\x10\x02\x12\x14\n\x10SPAN_KIND_CLIENT\x10\x03\x12\x16\n\x12SPAN_KIND_PRODUCER\x10\x04\x12\x16\n\x12SPAN_KIND_CONSUMER\x10\x05\"\xae\x01\n\x06Status\x12\x0f\n\x07message\x18\x02 \x01(\t\x12=\n\x04\x63ode\x18\x03 \x01(\x0e\x32/.opentelemetry.proto.trace.v1.Status.StatusCode\"N\n\nStatusCode\x12\x15\n\x11STATUS_CODE_UNSET\x10\x00\x12\x12\n\x0eSTATUS_CODE_OK\x10\x01\x12\x15\n\x11STATUS_CODE_ERROR\x10\x02J\x04\x08\x01\x10\x02*\x9c\x01\n\tSpanFlags\x12\x19\n\x15SPAN_FLAGS_DO_NOT_USE\x10\x00\x12 \n\x1bSPAN_FLAGS_TRACE_FLAGS_MASK\x10\xff\x01\x12*\n%SPAN_FLAGS_CONTEXT_HAS_IS_REMOTE_MASK\x10\x80\x02\x12&\n!SPAN_FLAGS_CONTEXT_IS_REMOTE_MASK\x10\x80\x04\x42w\n\x1fio.opentelemetry.proto.trace.v1B\nTraceProtoP\x01Z\'go.opentelemetry.io/proto/otlp/trace/v1\xaa\x02\x1cOpenTelemetry.Proto.Trace.V1b\x06proto3" + +pool = ::Google::Protobuf::DescriptorPool.generated_pool pool.add_serialized_file(descriptor_data) module Opentelemetry module Proto module Trace module V1 - TracesData = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.trace.v1.TracesData').msgclass - ResourceSpans = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.trace.v1.ResourceSpans').msgclass - ScopeSpans = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.trace.v1.ScopeSpans').msgclass - Span = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.trace.v1.Span').msgclass - Span::Event = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.trace.v1.Span.Event').msgclass - Span::Link = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.trace.v1.Span.Link').msgclass - Span::SpanKind = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.trace.v1.Span.SpanKind').enummodule - Status = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.trace.v1.Status').msgclass - Status::StatusCode = ::Google::Protobuf::DescriptorPool.generated_pool.lookup('opentelemetry.proto.trace.v1.Status.StatusCode').enummodule + TracesData = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.TracesData").msgclass + ResourceSpans = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.ResourceSpans").msgclass + ScopeSpans = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.ScopeSpans").msgclass + Span = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.Span").msgclass + Span::Event = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.Span.Event").msgclass + Span::Link = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.Span.Link").msgclass + Span::SpanKind = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.Span.SpanKind").enummodule + Status = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.Status").msgclass + Status::StatusCode = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.Status.StatusCode").enummodule + SpanFlags = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.SpanFlags").enummodule end end end diff --git a/exporter/otlp-metrics/Rakefile b/exporter/otlp-metrics/Rakefile index 049c672b89..18848eb5bd 100644 --- a/exporter/otlp-metrics/Rakefile +++ b/exporter/otlp-metrics/Rakefile @@ -32,8 +32,8 @@ default_tasks = task default: default_tasks -# https://github.com/open-telemetry/opentelemetry-proto/tree/v0.20.0 -PROTO_VERSION = 'v0.20.0' +# https://github.com/open-telemetry/opentelemetry-proto/tree/v1.8.0 +PROTO_VERSION = 'v1.8.0' namespace :protobuf do desc 'Clean protobuf file' diff --git a/exporter/otlp-metrics/lib/opentelemetry/proto/collector/logs/v1/logs_service_pb.rb b/exporter/otlp-metrics/lib/opentelemetry/proto/collector/logs/v1/logs_service_pb.rb index d243dfbc07..f1c0b1a23d 100644 --- a/exporter/otlp-metrics/lib/opentelemetry/proto/collector/logs/v1/logs_service_pb.rb +++ b/exporter/otlp-metrics/lib/opentelemetry/proto/collector/logs/v1/logs_service_pb.rb @@ -9,7 +9,7 @@ descriptor_data = "\n8opentelemetry/proto/collector/logs/v1/logs_service.proto\x12%opentelemetry.proto.collector.logs.v1\x1a&opentelemetry/proto/logs/v1/logs.proto\"\\\n\x18\x45xportLogsServiceRequest\x12@\n\rresource_logs\x18\x01 \x03(\x0b\x32).opentelemetry.proto.logs.v1.ResourceLogs\"u\n\x19\x45xportLogsServiceResponse\x12X\n\x0fpartial_success\x18\x01 \x01(\x0b\x32?.opentelemetry.proto.collector.logs.v1.ExportLogsPartialSuccess\"O\n\x18\x45xportLogsPartialSuccess\x12\x1c\n\x14rejected_log_records\x18\x01 \x01(\x03\x12\x15\n\rerror_message\x18\x02 \x01(\t2\x9d\x01\n\x0bLogsService\x12\x8d\x01\n\x06\x45xport\x12?.opentelemetry.proto.collector.logs.v1.ExportLogsServiceRequest\x1a@.opentelemetry.proto.collector.logs.v1.ExportLogsServiceResponse\"\x00\x42\x98\x01\n(io.opentelemetry.proto.collector.logs.v1B\x10LogsServiceProtoP\x01Z0go.opentelemetry.io/proto/otlp/collector/logs/v1\xaa\x02%OpenTelemetry.Proto.Collector.Logs.V1b\x06proto3" -pool = Google::Protobuf::DescriptorPool.generated_pool +pool = ::Google::Protobuf::DescriptorPool.generated_pool pool.add_serialized_file(descriptor_data) module Opentelemetry diff --git a/exporter/otlp-metrics/lib/opentelemetry/proto/collector/metrics/v1/metrics_service_pb.rb b/exporter/otlp-metrics/lib/opentelemetry/proto/collector/metrics/v1/metrics_service_pb.rb index 637fce86ce..5159483185 100644 --- a/exporter/otlp-metrics/lib/opentelemetry/proto/collector/metrics/v1/metrics_service_pb.rb +++ b/exporter/otlp-metrics/lib/opentelemetry/proto/collector/metrics/v1/metrics_service_pb.rb @@ -9,7 +9,7 @@ descriptor_data = "\n>opentelemetry/proto/collector/metrics/v1/metrics_service.proto\x12(opentelemetry.proto.collector.metrics.v1\x1a,opentelemetry/proto/metrics/v1/metrics.proto\"h\n\x1b\x45xportMetricsServiceRequest\x12I\n\x10resource_metrics\x18\x01 \x03(\x0b\x32/.opentelemetry.proto.metrics.v1.ResourceMetrics\"~\n\x1c\x45xportMetricsServiceResponse\x12^\n\x0fpartial_success\x18\x01 \x01(\x0b\x32\x45.opentelemetry.proto.collector.metrics.v1.ExportMetricsPartialSuccess\"R\n\x1b\x45xportMetricsPartialSuccess\x12\x1c\n\x14rejected_data_points\x18\x01 \x01(\x03\x12\x15\n\rerror_message\x18\x02 \x01(\t2\xac\x01\n\x0eMetricsService\x12\x99\x01\n\x06\x45xport\x12\x45.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceRequest\x1a\x46.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceResponse\"\x00\x42\xa4\x01\n+io.opentelemetry.proto.collector.metrics.v1B\x13MetricsServiceProtoP\x01Z3go.opentelemetry.io/proto/otlp/collector/metrics/v1\xaa\x02(OpenTelemetry.Proto.Collector.Metrics.V1b\x06proto3" -pool = Google::Protobuf::DescriptorPool.generated_pool +pool = ::Google::Protobuf::DescriptorPool.generated_pool pool.add_serialized_file(descriptor_data) module Opentelemetry diff --git a/exporter/otlp-metrics/lib/opentelemetry/proto/collector/profiles/v1development/profiles_service_pb.rb b/exporter/otlp-metrics/lib/opentelemetry/proto/collector/profiles/v1development/profiles_service_pb.rb new file mode 100644 index 0000000000..4290774652 --- /dev/null +++ b/exporter/otlp-metrics/lib/opentelemetry/proto/collector/profiles/v1development/profiles_service_pb.rb @@ -0,0 +1,27 @@ +# frozen_string_literal: true +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: opentelemetry/proto/collector/profiles/v1development/profiles_service.proto + +require 'google/protobuf' + +require 'opentelemetry/proto/profiles/v1development/profiles_pb' + + +descriptor_data = "\nKopentelemetry/proto/collector/profiles/v1development/profiles_service.proto\x12\x34opentelemetry.proto.collector.profiles.v1development\x1a\x39opentelemetry/proto/profiles/v1development/profiles.proto\"\xcb\x01\n\x1c\x45xportProfilesServiceRequest\x12W\n\x11resource_profiles\x18\x01 \x03(\x0b\x32<.opentelemetry.proto.profiles.v1development.ResourceProfiles\x12R\n\ndictionary\x18\x02 \x01(\x0b\x32>.opentelemetry.proto.profiles.v1development.ProfilesDictionary\"\x8c\x01\n\x1d\x45xportProfilesServiceResponse\x12k\n\x0fpartial_success\x18\x01 \x01(\x0b\x32R.opentelemetry.proto.collector.profiles.v1development.ExportProfilesPartialSuccess\"P\n\x1c\x45xportProfilesPartialSuccess\x12\x19\n\x11rejected_profiles\x18\x01 \x01(\x03\x12\x15\n\rerror_message\x18\x02 \x01(\t2\xc7\x01\n\x0fProfilesService\x12\xb3\x01\n\x06\x45xport\x12R.opentelemetry.proto.collector.profiles.v1development.ExportProfilesServiceRequest\x1aS.opentelemetry.proto.collector.profiles.v1development.ExportProfilesServiceResponse\"\x00\x42\xc9\x01\n7io.opentelemetry.proto.collector.profiles.v1developmentB\x14ProfilesServiceProtoP\x01Z?go.opentelemetry.io/proto/otlp/collector/profiles/v1development\xaa\x02\x34OpenTelemetry.Proto.Collector.Profiles.V1Developmentb\x06proto3" + +pool = ::Google::Protobuf::DescriptorPool.generated_pool +pool.add_serialized_file(descriptor_data) + +module Opentelemetry + module Proto + module Collector + module Profiles + module V1development + ExportProfilesServiceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.collector.profiles.v1development.ExportProfilesServiceRequest").msgclass + ExportProfilesServiceResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.collector.profiles.v1development.ExportProfilesServiceResponse").msgclass + ExportProfilesPartialSuccess = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.collector.profiles.v1development.ExportProfilesPartialSuccess").msgclass + end + end + end + end +end diff --git a/exporter/otlp-metrics/lib/opentelemetry/proto/collector/trace/v1/trace_service_pb.rb b/exporter/otlp-metrics/lib/opentelemetry/proto/collector/trace/v1/trace_service_pb.rb index 95f802c0f6..bf85d665db 100644 --- a/exporter/otlp-metrics/lib/opentelemetry/proto/collector/trace/v1/trace_service_pb.rb +++ b/exporter/otlp-metrics/lib/opentelemetry/proto/collector/trace/v1/trace_service_pb.rb @@ -9,7 +9,7 @@ descriptor_data = "\n:opentelemetry/proto/collector/trace/v1/trace_service.proto\x12&opentelemetry.proto.collector.trace.v1\x1a(opentelemetry/proto/trace/v1/trace.proto\"`\n\x19\x45xportTraceServiceRequest\x12\x43\n\x0eresource_spans\x18\x01 \x03(\x0b\x32+.opentelemetry.proto.trace.v1.ResourceSpans\"x\n\x1a\x45xportTraceServiceResponse\x12Z\n\x0fpartial_success\x18\x01 \x01(\x0b\x32\x41.opentelemetry.proto.collector.trace.v1.ExportTracePartialSuccess\"J\n\x19\x45xportTracePartialSuccess\x12\x16\n\x0erejected_spans\x18\x01 \x01(\x03\x12\x15\n\rerror_message\x18\x02 \x01(\t2\xa2\x01\n\x0cTraceService\x12\x91\x01\n\x06\x45xport\x12\x41.opentelemetry.proto.collector.trace.v1.ExportTraceServiceRequest\x1a\x42.opentelemetry.proto.collector.trace.v1.ExportTraceServiceResponse\"\x00\x42\x9c\x01\n)io.opentelemetry.proto.collector.trace.v1B\x11TraceServiceProtoP\x01Z1go.opentelemetry.io/proto/otlp/collector/trace/v1\xaa\x02&OpenTelemetry.Proto.Collector.Trace.V1b\x06proto3" -pool = Google::Protobuf::DescriptorPool.generated_pool +pool = ::Google::Protobuf::DescriptorPool.generated_pool pool.add_serialized_file(descriptor_data) module Opentelemetry diff --git a/exporter/otlp-metrics/lib/opentelemetry/proto/common/v1/common_pb.rb b/exporter/otlp-metrics/lib/opentelemetry/proto/common/v1/common_pb.rb index a9a74ad335..6dc7114329 100644 --- a/exporter/otlp-metrics/lib/opentelemetry/proto/common/v1/common_pb.rb +++ b/exporter/otlp-metrics/lib/opentelemetry/proto/common/v1/common_pb.rb @@ -5,9 +5,9 @@ require 'google/protobuf' -descriptor_data = "\n*opentelemetry/proto/common/v1/common.proto\x12\x1dopentelemetry.proto.common.v1\"\x8c\x02\n\x08\x41nyValue\x12\x16\n\x0cstring_value\x18\x01 \x01(\tH\x00\x12\x14\n\nbool_value\x18\x02 \x01(\x08H\x00\x12\x13\n\tint_value\x18\x03 \x01(\x03H\x00\x12\x16\n\x0c\x64ouble_value\x18\x04 \x01(\x01H\x00\x12@\n\x0b\x61rray_value\x18\x05 \x01(\x0b\x32).opentelemetry.proto.common.v1.ArrayValueH\x00\x12\x43\n\x0ckvlist_value\x18\x06 \x01(\x0b\x32+.opentelemetry.proto.common.v1.KeyValueListH\x00\x12\x15\n\x0b\x62ytes_value\x18\x07 \x01(\x0cH\x00\x42\x07\n\x05value\"E\n\nArrayValue\x12\x37\n\x06values\x18\x01 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.AnyValue\"G\n\x0cKeyValueList\x12\x37\n\x06values\x18\x01 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\"O\n\x08KeyValue\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x36\n\x05value\x18\x02 \x01(\x0b\x32\'.opentelemetry.proto.common.v1.AnyValue\"\x94\x01\n\x14InstrumentationScope\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07version\x18\x02 \x01(\t\x12;\n\nattributes\x18\x03 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\x04 \x01(\rB{\n io.opentelemetry.proto.common.v1B\x0b\x43ommonProtoP\x01Z(go.opentelemetry.io/proto/otlp/common/v1\xaa\x02\x1dOpenTelemetry.Proto.Common.V1b\x06proto3" +descriptor_data = "\n*opentelemetry/proto/common/v1/common.proto\x12\x1dopentelemetry.proto.common.v1\"\x8c\x02\n\x08\x41nyValue\x12\x16\n\x0cstring_value\x18\x01 \x01(\tH\x00\x12\x14\n\nbool_value\x18\x02 \x01(\x08H\x00\x12\x13\n\tint_value\x18\x03 \x01(\x03H\x00\x12\x16\n\x0c\x64ouble_value\x18\x04 \x01(\x01H\x00\x12@\n\x0b\x61rray_value\x18\x05 \x01(\x0b\x32).opentelemetry.proto.common.v1.ArrayValueH\x00\x12\x43\n\x0ckvlist_value\x18\x06 \x01(\x0b\x32+.opentelemetry.proto.common.v1.KeyValueListH\x00\x12\x15\n\x0b\x62ytes_value\x18\x07 \x01(\x0cH\x00\x42\x07\n\x05value\"E\n\nArrayValue\x12\x37\n\x06values\x18\x01 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.AnyValue\"G\n\x0cKeyValueList\x12\x37\n\x06values\x18\x01 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\"O\n\x08KeyValue\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x36\n\x05value\x18\x02 \x01(\x0b\x32\'.opentelemetry.proto.common.v1.AnyValue\"\x94\x01\n\x14InstrumentationScope\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07version\x18\x02 \x01(\t\x12;\n\nattributes\x18\x03 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\x04 \x01(\r\"X\n\tEntityRef\x12\x12\n\nschema_url\x18\x01 \x01(\t\x12\x0c\n\x04type\x18\x02 \x01(\t\x12\x0f\n\x07id_keys\x18\x03 \x03(\t\x12\x18\n\x10\x64\x65scription_keys\x18\x04 \x03(\tB{\n io.opentelemetry.proto.common.v1B\x0b\x43ommonProtoP\x01Z(go.opentelemetry.io/proto/otlp/common/v1\xaa\x02\x1dOpenTelemetry.Proto.Common.V1b\x06proto3" -pool = Google::Protobuf::DescriptorPool.generated_pool +pool = ::Google::Protobuf::DescriptorPool.generated_pool pool.add_serialized_file(descriptor_data) module Opentelemetry @@ -19,6 +19,7 @@ module V1 KeyValueList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.common.v1.KeyValueList").msgclass KeyValue = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.common.v1.KeyValue").msgclass InstrumentationScope = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.common.v1.InstrumentationScope").msgclass + EntityRef = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.common.v1.EntityRef").msgclass end end end diff --git a/exporter/otlp-metrics/lib/opentelemetry/proto/logs/v1/logs_pb.rb b/exporter/otlp-metrics/lib/opentelemetry/proto/logs/v1/logs_pb.rb index ba19937d1a..ce9b71580c 100644 --- a/exporter/otlp-metrics/lib/opentelemetry/proto/logs/v1/logs_pb.rb +++ b/exporter/otlp-metrics/lib/opentelemetry/proto/logs/v1/logs_pb.rb @@ -8,9 +8,9 @@ require 'opentelemetry/proto/resource/v1/resource_pb' -descriptor_data = "\n&opentelemetry/proto/logs/v1/logs.proto\x12\x1bopentelemetry.proto.logs.v1\x1a*opentelemetry/proto/common/v1/common.proto\x1a.opentelemetry/proto/resource/v1/resource.proto\"L\n\x08LogsData\x12@\n\rresource_logs\x18\x01 \x03(\x0b\x32).opentelemetry.proto.logs.v1.ResourceLogs\"\xa3\x01\n\x0cResourceLogs\x12;\n\x08resource\x18\x01 \x01(\x0b\x32).opentelemetry.proto.resource.v1.Resource\x12:\n\nscope_logs\x18\x02 \x03(\x0b\x32&.opentelemetry.proto.logs.v1.ScopeLogs\x12\x12\n\nschema_url\x18\x03 \x01(\tJ\x06\x08\xe8\x07\x10\xe9\x07\"\xa0\x01\n\tScopeLogs\x12\x42\n\x05scope\x18\x01 \x01(\x0b\x32\x33.opentelemetry.proto.common.v1.InstrumentationScope\x12;\n\x0blog_records\x18\x02 \x03(\x0b\x32&.opentelemetry.proto.logs.v1.LogRecord\x12\x12\n\nschema_url\x18\x03 \x01(\t\"\xef\x02\n\tLogRecord\x12\x16\n\x0etime_unix_nano\x18\x01 \x01(\x06\x12\x1f\n\x17observed_time_unix_nano\x18\x0b \x01(\x06\x12\x44\n\x0fseverity_number\x18\x02 \x01(\x0e\x32+.opentelemetry.proto.logs.v1.SeverityNumber\x12\x15\n\rseverity_text\x18\x03 \x01(\t\x12\x35\n\x04\x62ody\x18\x05 \x01(\x0b\x32\'.opentelemetry.proto.common.v1.AnyValue\x12;\n\nattributes\x18\x06 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\x07 \x01(\r\x12\r\n\x05\x66lags\x18\x08 \x01(\x07\x12\x10\n\x08trace_id\x18\t \x01(\x0c\x12\x0f\n\x07span_id\x18\n \x01(\x0cJ\x04\x08\x04\x10\x05*\xc3\x05\n\x0eSeverityNumber\x12\x1f\n\x1bSEVERITY_NUMBER_UNSPECIFIED\x10\x00\x12\x19\n\x15SEVERITY_NUMBER_TRACE\x10\x01\x12\x1a\n\x16SEVERITY_NUMBER_TRACE2\x10\x02\x12\x1a\n\x16SEVERITY_NUMBER_TRACE3\x10\x03\x12\x1a\n\x16SEVERITY_NUMBER_TRACE4\x10\x04\x12\x19\n\x15SEVERITY_NUMBER_DEBUG\x10\x05\x12\x1a\n\x16SEVERITY_NUMBER_DEBUG2\x10\x06\x12\x1a\n\x16SEVERITY_NUMBER_DEBUG3\x10\x07\x12\x1a\n\x16SEVERITY_NUMBER_DEBUG4\x10\x08\x12\x18\n\x14SEVERITY_NUMBER_INFO\x10\t\x12\x19\n\x15SEVERITY_NUMBER_INFO2\x10\n\x12\x19\n\x15SEVERITY_NUMBER_INFO3\x10\x0b\x12\x19\n\x15SEVERITY_NUMBER_INFO4\x10\x0c\x12\x18\n\x14SEVERITY_NUMBER_WARN\x10\r\x12\x19\n\x15SEVERITY_NUMBER_WARN2\x10\x0e\x12\x19\n\x15SEVERITY_NUMBER_WARN3\x10\x0f\x12\x19\n\x15SEVERITY_NUMBER_WARN4\x10\x10\x12\x19\n\x15SEVERITY_NUMBER_ERROR\x10\x11\x12\x1a\n\x16SEVERITY_NUMBER_ERROR2\x10\x12\x12\x1a\n\x16SEVERITY_NUMBER_ERROR3\x10\x13\x12\x1a\n\x16SEVERITY_NUMBER_ERROR4\x10\x14\x12\x19\n\x15SEVERITY_NUMBER_FATAL\x10\x15\x12\x1a\n\x16SEVERITY_NUMBER_FATAL2\x10\x16\x12\x1a\n\x16SEVERITY_NUMBER_FATAL3\x10\x17\x12\x1a\n\x16SEVERITY_NUMBER_FATAL4\x10\x18*Y\n\x0eLogRecordFlags\x12\x1f\n\x1bLOG_RECORD_FLAGS_DO_NOT_USE\x10\x00\x12&\n!LOG_RECORD_FLAGS_TRACE_FLAGS_MASK\x10\xff\x01\x42s\n\x1eio.opentelemetry.proto.logs.v1B\tLogsProtoP\x01Z&go.opentelemetry.io/proto/otlp/logs/v1\xaa\x02\x1bOpenTelemetry.Proto.Logs.V1b\x06proto3" +descriptor_data = "\n&opentelemetry/proto/logs/v1/logs.proto\x12\x1bopentelemetry.proto.logs.v1\x1a*opentelemetry/proto/common/v1/common.proto\x1a.opentelemetry/proto/resource/v1/resource.proto\"L\n\x08LogsData\x12@\n\rresource_logs\x18\x01 \x03(\x0b\x32).opentelemetry.proto.logs.v1.ResourceLogs\"\xa3\x01\n\x0cResourceLogs\x12;\n\x08resource\x18\x01 \x01(\x0b\x32).opentelemetry.proto.resource.v1.Resource\x12:\n\nscope_logs\x18\x02 \x03(\x0b\x32&.opentelemetry.proto.logs.v1.ScopeLogs\x12\x12\n\nschema_url\x18\x03 \x01(\tJ\x06\x08\xe8\x07\x10\xe9\x07\"\xa0\x01\n\tScopeLogs\x12\x42\n\x05scope\x18\x01 \x01(\x0b\x32\x33.opentelemetry.proto.common.v1.InstrumentationScope\x12;\n\x0blog_records\x18\x02 \x03(\x0b\x32&.opentelemetry.proto.logs.v1.LogRecord\x12\x12\n\nschema_url\x18\x03 \x01(\t\"\x83\x03\n\tLogRecord\x12\x16\n\x0etime_unix_nano\x18\x01 \x01(\x06\x12\x1f\n\x17observed_time_unix_nano\x18\x0b \x01(\x06\x12\x44\n\x0fseverity_number\x18\x02 \x01(\x0e\x32+.opentelemetry.proto.logs.v1.SeverityNumber\x12\x15\n\rseverity_text\x18\x03 \x01(\t\x12\x35\n\x04\x62ody\x18\x05 \x01(\x0b\x32\'.opentelemetry.proto.common.v1.AnyValue\x12;\n\nattributes\x18\x06 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\x07 \x01(\r\x12\r\n\x05\x66lags\x18\x08 \x01(\x07\x12\x10\n\x08trace_id\x18\t \x01(\x0c\x12\x0f\n\x07span_id\x18\n \x01(\x0c\x12\x12\n\nevent_name\x18\x0c \x01(\tJ\x04\x08\x04\x10\x05*\xc3\x05\n\x0eSeverityNumber\x12\x1f\n\x1bSEVERITY_NUMBER_UNSPECIFIED\x10\x00\x12\x19\n\x15SEVERITY_NUMBER_TRACE\x10\x01\x12\x1a\n\x16SEVERITY_NUMBER_TRACE2\x10\x02\x12\x1a\n\x16SEVERITY_NUMBER_TRACE3\x10\x03\x12\x1a\n\x16SEVERITY_NUMBER_TRACE4\x10\x04\x12\x19\n\x15SEVERITY_NUMBER_DEBUG\x10\x05\x12\x1a\n\x16SEVERITY_NUMBER_DEBUG2\x10\x06\x12\x1a\n\x16SEVERITY_NUMBER_DEBUG3\x10\x07\x12\x1a\n\x16SEVERITY_NUMBER_DEBUG4\x10\x08\x12\x18\n\x14SEVERITY_NUMBER_INFO\x10\t\x12\x19\n\x15SEVERITY_NUMBER_INFO2\x10\n\x12\x19\n\x15SEVERITY_NUMBER_INFO3\x10\x0b\x12\x19\n\x15SEVERITY_NUMBER_INFO4\x10\x0c\x12\x18\n\x14SEVERITY_NUMBER_WARN\x10\r\x12\x19\n\x15SEVERITY_NUMBER_WARN2\x10\x0e\x12\x19\n\x15SEVERITY_NUMBER_WARN3\x10\x0f\x12\x19\n\x15SEVERITY_NUMBER_WARN4\x10\x10\x12\x19\n\x15SEVERITY_NUMBER_ERROR\x10\x11\x12\x1a\n\x16SEVERITY_NUMBER_ERROR2\x10\x12\x12\x1a\n\x16SEVERITY_NUMBER_ERROR3\x10\x13\x12\x1a\n\x16SEVERITY_NUMBER_ERROR4\x10\x14\x12\x19\n\x15SEVERITY_NUMBER_FATAL\x10\x15\x12\x1a\n\x16SEVERITY_NUMBER_FATAL2\x10\x16\x12\x1a\n\x16SEVERITY_NUMBER_FATAL3\x10\x17\x12\x1a\n\x16SEVERITY_NUMBER_FATAL4\x10\x18*Y\n\x0eLogRecordFlags\x12\x1f\n\x1bLOG_RECORD_FLAGS_DO_NOT_USE\x10\x00\x12&\n!LOG_RECORD_FLAGS_TRACE_FLAGS_MASK\x10\xff\x01\x42s\n\x1eio.opentelemetry.proto.logs.v1B\tLogsProtoP\x01Z&go.opentelemetry.io/proto/otlp/logs/v1\xaa\x02\x1bOpenTelemetry.Proto.Logs.V1b\x06proto3" -pool = Google::Protobuf::DescriptorPool.generated_pool +pool = ::Google::Protobuf::DescriptorPool.generated_pool pool.add_serialized_file(descriptor_data) module Opentelemetry diff --git a/exporter/otlp-metrics/lib/opentelemetry/proto/metrics/v1/metrics_pb.rb b/exporter/otlp-metrics/lib/opentelemetry/proto/metrics/v1/metrics_pb.rb index ada5f22e09..ced1dd9f8a 100644 --- a/exporter/otlp-metrics/lib/opentelemetry/proto/metrics/v1/metrics_pb.rb +++ b/exporter/otlp-metrics/lib/opentelemetry/proto/metrics/v1/metrics_pb.rb @@ -8,9 +8,9 @@ require 'opentelemetry/proto/resource/v1/resource_pb' -descriptor_data = "\n,opentelemetry/proto/metrics/v1/metrics.proto\x12\x1eopentelemetry.proto.metrics.v1\x1a*opentelemetry/proto/common/v1/common.proto\x1a.opentelemetry/proto/resource/v1/resource.proto\"X\n\x0bMetricsData\x12I\n\x10resource_metrics\x18\x01 \x03(\x0b\x32/.opentelemetry.proto.metrics.v1.ResourceMetrics\"\xaf\x01\n\x0fResourceMetrics\x12;\n\x08resource\x18\x01 \x01(\x0b\x32).opentelemetry.proto.resource.v1.Resource\x12\x43\n\rscope_metrics\x18\x02 \x03(\x0b\x32,.opentelemetry.proto.metrics.v1.ScopeMetrics\x12\x12\n\nschema_url\x18\x03 \x01(\tJ\x06\x08\xe8\x07\x10\xe9\x07\"\x9f\x01\n\x0cScopeMetrics\x12\x42\n\x05scope\x18\x01 \x01(\x0b\x32\x33.opentelemetry.proto.common.v1.InstrumentationScope\x12\x37\n\x07metrics\x18\x02 \x03(\x0b\x32&.opentelemetry.proto.metrics.v1.Metric\x12\x12\n\nschema_url\x18\x03 \x01(\t\"\x92\x03\n\x06Metric\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\x0c\n\x04unit\x18\x03 \x01(\t\x12\x36\n\x05gauge\x18\x05 \x01(\x0b\x32%.opentelemetry.proto.metrics.v1.GaugeH\x00\x12\x32\n\x03sum\x18\x07 \x01(\x0b\x32#.opentelemetry.proto.metrics.v1.SumH\x00\x12>\n\thistogram\x18\t \x01(\x0b\x32).opentelemetry.proto.metrics.v1.HistogramH\x00\x12U\n\x15\x65xponential_histogram\x18\n \x01(\x0b\x32\x34.opentelemetry.proto.metrics.v1.ExponentialHistogramH\x00\x12:\n\x07summary\x18\x0b \x01(\x0b\x32\'.opentelemetry.proto.metrics.v1.SummaryH\x00\x42\x06\n\x04\x64\x61taJ\x04\x08\x04\x10\x05J\x04\x08\x06\x10\x07J\x04\x08\x08\x10\t\"M\n\x05Gauge\x12\x44\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32/.opentelemetry.proto.metrics.v1.NumberDataPoint\"\xba\x01\n\x03Sum\x12\x44\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32/.opentelemetry.proto.metrics.v1.NumberDataPoint\x12W\n\x17\x61ggregation_temporality\x18\x02 \x01(\x0e\x32\x36.opentelemetry.proto.metrics.v1.AggregationTemporality\x12\x14\n\x0cis_monotonic\x18\x03 \x01(\x08\"\xad\x01\n\tHistogram\x12G\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32\x32.opentelemetry.proto.metrics.v1.HistogramDataPoint\x12W\n\x17\x61ggregation_temporality\x18\x02 \x01(\x0e\x32\x36.opentelemetry.proto.metrics.v1.AggregationTemporality\"\xc3\x01\n\x14\x45xponentialHistogram\x12R\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32=.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint\x12W\n\x17\x61ggregation_temporality\x18\x02 \x01(\x0e\x32\x36.opentelemetry.proto.metrics.v1.AggregationTemporality\"P\n\x07Summary\x12\x45\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32\x30.opentelemetry.proto.metrics.v1.SummaryDataPoint\"\x86\x02\n\x0fNumberDataPoint\x12;\n\nattributes\x18\x07 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x1c\n\x14start_time_unix_nano\x18\x02 \x01(\x06\x12\x16\n\x0etime_unix_nano\x18\x03 \x01(\x06\x12\x13\n\tas_double\x18\x04 \x01(\x01H\x00\x12\x10\n\x06\x61s_int\x18\x06 \x01(\x10H\x00\x12;\n\texemplars\x18\x05 \x03(\x0b\x32(.opentelemetry.proto.metrics.v1.Exemplar\x12\r\n\x05\x66lags\x18\x08 \x01(\rB\x07\n\x05valueJ\x04\x08\x01\x10\x02\"\xe6\x02\n\x12HistogramDataPoint\x12;\n\nattributes\x18\t \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x1c\n\x14start_time_unix_nano\x18\x02 \x01(\x06\x12\x16\n\x0etime_unix_nano\x18\x03 \x01(\x06\x12\r\n\x05\x63ount\x18\x04 \x01(\x06\x12\x10\n\x03sum\x18\x05 \x01(\x01H\x00\x88\x01\x01\x12\x15\n\rbucket_counts\x18\x06 \x03(\x06\x12\x17\n\x0f\x65xplicit_bounds\x18\x07 \x03(\x01\x12;\n\texemplars\x18\x08 \x03(\x0b\x32(.opentelemetry.proto.metrics.v1.Exemplar\x12\r\n\x05\x66lags\x18\n \x01(\r\x12\x10\n\x03min\x18\x0b \x01(\x01H\x01\x88\x01\x01\x12\x10\n\x03max\x18\x0c \x01(\x01H\x02\x88\x01\x01\x42\x06\n\x04_sumB\x06\n\x04_minB\x06\n\x04_maxJ\x04\x08\x01\x10\x02\"\xda\x04\n\x1d\x45xponentialHistogramDataPoint\x12;\n\nattributes\x18\x01 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x1c\n\x14start_time_unix_nano\x18\x02 \x01(\x06\x12\x16\n\x0etime_unix_nano\x18\x03 \x01(\x06\x12\r\n\x05\x63ount\x18\x04 \x01(\x06\x12\x10\n\x03sum\x18\x05 \x01(\x01H\x00\x88\x01\x01\x12\r\n\x05scale\x18\x06 \x01(\x11\x12\x12\n\nzero_count\x18\x07 \x01(\x06\x12W\n\x08positive\x18\x08 \x01(\x0b\x32\x45.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets\x12W\n\x08negative\x18\t \x01(\x0b\x32\x45.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets\x12\r\n\x05\x66lags\x18\n \x01(\r\x12;\n\texemplars\x18\x0b \x03(\x0b\x32(.opentelemetry.proto.metrics.v1.Exemplar\x12\x10\n\x03min\x18\x0c \x01(\x01H\x01\x88\x01\x01\x12\x10\n\x03max\x18\r \x01(\x01H\x02\x88\x01\x01\x12\x16\n\x0ezero_threshold\x18\x0e \x01(\x01\x1a\x30\n\x07\x42uckets\x12\x0e\n\x06offset\x18\x01 \x01(\x11\x12\x15\n\rbucket_counts\x18\x02 \x03(\x04\x42\x06\n\x04_sumB\x06\n\x04_minB\x06\n\x04_max\"\xc5\x02\n\x10SummaryDataPoint\x12;\n\nattributes\x18\x07 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x1c\n\x14start_time_unix_nano\x18\x02 \x01(\x06\x12\x16\n\x0etime_unix_nano\x18\x03 \x01(\x06\x12\r\n\x05\x63ount\x18\x04 \x01(\x06\x12\x0b\n\x03sum\x18\x05 \x01(\x01\x12Y\n\x0fquantile_values\x18\x06 \x03(\x0b\x32@.opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile\x12\r\n\x05\x66lags\x18\x08 \x01(\r\x1a\x32\n\x0fValueAtQuantile\x12\x10\n\x08quantile\x18\x01 \x01(\x01\x12\r\n\x05value\x18\x02 \x01(\x01J\x04\x08\x01\x10\x02\"\xc1\x01\n\x08\x45xemplar\x12\x44\n\x13\x66iltered_attributes\x18\x07 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x16\n\x0etime_unix_nano\x18\x02 \x01(\x06\x12\x13\n\tas_double\x18\x03 \x01(\x01H\x00\x12\x10\n\x06\x61s_int\x18\x06 \x01(\x10H\x00\x12\x0f\n\x07span_id\x18\x04 \x01(\x0c\x12\x10\n\x08trace_id\x18\x05 \x01(\x0c\x42\x07\n\x05valueJ\x04\x08\x01\x10\x02*\x8c\x01\n\x16\x41ggregationTemporality\x12\'\n#AGGREGATION_TEMPORALITY_UNSPECIFIED\x10\x00\x12!\n\x1d\x41GGREGATION_TEMPORALITY_DELTA\x10\x01\x12&\n\"AGGREGATION_TEMPORALITY_CUMULATIVE\x10\x02*^\n\x0e\x44\x61taPointFlags\x12\x1f\n\x1b\x44\x41TA_POINT_FLAGS_DO_NOT_USE\x10\x00\x12+\n\'DATA_POINT_FLAGS_NO_RECORDED_VALUE_MASK\x10\x01\x42\x7f\n!io.opentelemetry.proto.metrics.v1B\x0cMetricsProtoP\x01Z)go.opentelemetry.io/proto/otlp/metrics/v1\xaa\x02\x1eOpenTelemetry.Proto.Metrics.V1b\x06proto3" +descriptor_data = "\n,opentelemetry/proto/metrics/v1/metrics.proto\x12\x1eopentelemetry.proto.metrics.v1\x1a*opentelemetry/proto/common/v1/common.proto\x1a.opentelemetry/proto/resource/v1/resource.proto\"X\n\x0bMetricsData\x12I\n\x10resource_metrics\x18\x01 \x03(\x0b\x32/.opentelemetry.proto.metrics.v1.ResourceMetrics\"\xaf\x01\n\x0fResourceMetrics\x12;\n\x08resource\x18\x01 \x01(\x0b\x32).opentelemetry.proto.resource.v1.Resource\x12\x43\n\rscope_metrics\x18\x02 \x03(\x0b\x32,.opentelemetry.proto.metrics.v1.ScopeMetrics\x12\x12\n\nschema_url\x18\x03 \x01(\tJ\x06\x08\xe8\x07\x10\xe9\x07\"\x9f\x01\n\x0cScopeMetrics\x12\x42\n\x05scope\x18\x01 \x01(\x0b\x32\x33.opentelemetry.proto.common.v1.InstrumentationScope\x12\x37\n\x07metrics\x18\x02 \x03(\x0b\x32&.opentelemetry.proto.metrics.v1.Metric\x12\x12\n\nschema_url\x18\x03 \x01(\t\"\xcd\x03\n\x06Metric\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\x0c\n\x04unit\x18\x03 \x01(\t\x12\x36\n\x05gauge\x18\x05 \x01(\x0b\x32%.opentelemetry.proto.metrics.v1.GaugeH\x00\x12\x32\n\x03sum\x18\x07 \x01(\x0b\x32#.opentelemetry.proto.metrics.v1.SumH\x00\x12>\n\thistogram\x18\t \x01(\x0b\x32).opentelemetry.proto.metrics.v1.HistogramH\x00\x12U\n\x15\x65xponential_histogram\x18\n \x01(\x0b\x32\x34.opentelemetry.proto.metrics.v1.ExponentialHistogramH\x00\x12:\n\x07summary\x18\x0b \x01(\x0b\x32\'.opentelemetry.proto.metrics.v1.SummaryH\x00\x12\x39\n\x08metadata\x18\x0c \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValueB\x06\n\x04\x64\x61taJ\x04\x08\x04\x10\x05J\x04\x08\x06\x10\x07J\x04\x08\x08\x10\t\"M\n\x05Gauge\x12\x44\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32/.opentelemetry.proto.metrics.v1.NumberDataPoint\"\xba\x01\n\x03Sum\x12\x44\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32/.opentelemetry.proto.metrics.v1.NumberDataPoint\x12W\n\x17\x61ggregation_temporality\x18\x02 \x01(\x0e\x32\x36.opentelemetry.proto.metrics.v1.AggregationTemporality\x12\x14\n\x0cis_monotonic\x18\x03 \x01(\x08\"\xad\x01\n\tHistogram\x12G\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32\x32.opentelemetry.proto.metrics.v1.HistogramDataPoint\x12W\n\x17\x61ggregation_temporality\x18\x02 \x01(\x0e\x32\x36.opentelemetry.proto.metrics.v1.AggregationTemporality\"\xc3\x01\n\x14\x45xponentialHistogram\x12R\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32=.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint\x12W\n\x17\x61ggregation_temporality\x18\x02 \x01(\x0e\x32\x36.opentelemetry.proto.metrics.v1.AggregationTemporality\"P\n\x07Summary\x12\x45\n\x0b\x64\x61ta_points\x18\x01 \x03(\x0b\x32\x30.opentelemetry.proto.metrics.v1.SummaryDataPoint\"\x86\x02\n\x0fNumberDataPoint\x12;\n\nattributes\x18\x07 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x1c\n\x14start_time_unix_nano\x18\x02 \x01(\x06\x12\x16\n\x0etime_unix_nano\x18\x03 \x01(\x06\x12\x13\n\tas_double\x18\x04 \x01(\x01H\x00\x12\x10\n\x06\x61s_int\x18\x06 \x01(\x10H\x00\x12;\n\texemplars\x18\x05 \x03(\x0b\x32(.opentelemetry.proto.metrics.v1.Exemplar\x12\r\n\x05\x66lags\x18\x08 \x01(\rB\x07\n\x05valueJ\x04\x08\x01\x10\x02\"\xe6\x02\n\x12HistogramDataPoint\x12;\n\nattributes\x18\t \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x1c\n\x14start_time_unix_nano\x18\x02 \x01(\x06\x12\x16\n\x0etime_unix_nano\x18\x03 \x01(\x06\x12\r\n\x05\x63ount\x18\x04 \x01(\x06\x12\x10\n\x03sum\x18\x05 \x01(\x01H\x00\x88\x01\x01\x12\x15\n\rbucket_counts\x18\x06 \x03(\x06\x12\x17\n\x0f\x65xplicit_bounds\x18\x07 \x03(\x01\x12;\n\texemplars\x18\x08 \x03(\x0b\x32(.opentelemetry.proto.metrics.v1.Exemplar\x12\r\n\x05\x66lags\x18\n \x01(\r\x12\x10\n\x03min\x18\x0b \x01(\x01H\x01\x88\x01\x01\x12\x10\n\x03max\x18\x0c \x01(\x01H\x02\x88\x01\x01\x42\x06\n\x04_sumB\x06\n\x04_minB\x06\n\x04_maxJ\x04\x08\x01\x10\x02\"\xda\x04\n\x1d\x45xponentialHistogramDataPoint\x12;\n\nattributes\x18\x01 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x1c\n\x14start_time_unix_nano\x18\x02 \x01(\x06\x12\x16\n\x0etime_unix_nano\x18\x03 \x01(\x06\x12\r\n\x05\x63ount\x18\x04 \x01(\x06\x12\x10\n\x03sum\x18\x05 \x01(\x01H\x00\x88\x01\x01\x12\r\n\x05scale\x18\x06 \x01(\x11\x12\x12\n\nzero_count\x18\x07 \x01(\x06\x12W\n\x08positive\x18\x08 \x01(\x0b\x32\x45.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets\x12W\n\x08negative\x18\t \x01(\x0b\x32\x45.opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets\x12\r\n\x05\x66lags\x18\n \x01(\r\x12;\n\texemplars\x18\x0b \x03(\x0b\x32(.opentelemetry.proto.metrics.v1.Exemplar\x12\x10\n\x03min\x18\x0c \x01(\x01H\x01\x88\x01\x01\x12\x10\n\x03max\x18\r \x01(\x01H\x02\x88\x01\x01\x12\x16\n\x0ezero_threshold\x18\x0e \x01(\x01\x1a\x30\n\x07\x42uckets\x12\x0e\n\x06offset\x18\x01 \x01(\x11\x12\x15\n\rbucket_counts\x18\x02 \x03(\x04\x42\x06\n\x04_sumB\x06\n\x04_minB\x06\n\x04_max\"\xc5\x02\n\x10SummaryDataPoint\x12;\n\nattributes\x18\x07 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x1c\n\x14start_time_unix_nano\x18\x02 \x01(\x06\x12\x16\n\x0etime_unix_nano\x18\x03 \x01(\x06\x12\r\n\x05\x63ount\x18\x04 \x01(\x06\x12\x0b\n\x03sum\x18\x05 \x01(\x01\x12Y\n\x0fquantile_values\x18\x06 \x03(\x0b\x32@.opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile\x12\r\n\x05\x66lags\x18\x08 \x01(\r\x1a\x32\n\x0fValueAtQuantile\x12\x10\n\x08quantile\x18\x01 \x01(\x01\x12\r\n\x05value\x18\x02 \x01(\x01J\x04\x08\x01\x10\x02\"\xc1\x01\n\x08\x45xemplar\x12\x44\n\x13\x66iltered_attributes\x18\x07 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12\x16\n\x0etime_unix_nano\x18\x02 \x01(\x06\x12\x13\n\tas_double\x18\x03 \x01(\x01H\x00\x12\x10\n\x06\x61s_int\x18\x06 \x01(\x10H\x00\x12\x0f\n\x07span_id\x18\x04 \x01(\x0c\x12\x10\n\x08trace_id\x18\x05 \x01(\x0c\x42\x07\n\x05valueJ\x04\x08\x01\x10\x02*\x8c\x01\n\x16\x41ggregationTemporality\x12\'\n#AGGREGATION_TEMPORALITY_UNSPECIFIED\x10\x00\x12!\n\x1d\x41GGREGATION_TEMPORALITY_DELTA\x10\x01\x12&\n\"AGGREGATION_TEMPORALITY_CUMULATIVE\x10\x02*^\n\x0e\x44\x61taPointFlags\x12\x1f\n\x1b\x44\x41TA_POINT_FLAGS_DO_NOT_USE\x10\x00\x12+\n\'DATA_POINT_FLAGS_NO_RECORDED_VALUE_MASK\x10\x01\x42\x7f\n!io.opentelemetry.proto.metrics.v1B\x0cMetricsProtoP\x01Z)go.opentelemetry.io/proto/otlp/metrics/v1\xaa\x02\x1eOpenTelemetry.Proto.Metrics.V1b\x06proto3" -pool = Google::Protobuf::DescriptorPool.generated_pool +pool = ::Google::Protobuf::DescriptorPool.generated_pool pool.add_serialized_file(descriptor_data) module Opentelemetry diff --git a/exporter/otlp-metrics/lib/opentelemetry/proto/profiles/v1development/profiles_pb.rb b/exporter/otlp-metrics/lib/opentelemetry/proto/profiles/v1development/profiles_pb.rb new file mode 100644 index 0000000000..434b831d8d --- /dev/null +++ b/exporter/otlp-metrics/lib/opentelemetry/proto/profiles/v1development/profiles_pb.rb @@ -0,0 +1,38 @@ +# frozen_string_literal: true +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: opentelemetry/proto/profiles/v1development/profiles.proto + +require 'google/protobuf' + +require 'opentelemetry/proto/common/v1/common_pb' +require 'opentelemetry/proto/resource/v1/resource_pb' + + +descriptor_data = "\n9opentelemetry/proto/profiles/v1development/profiles.proto\x12*opentelemetry.proto.profiles.v1development\x1a*opentelemetry/proto/common/v1/common.proto\x1a.opentelemetry/proto/resource/v1/resource.proto\"\xf6\x03\n\x12ProfilesDictionary\x12J\n\rmapping_table\x18\x01 \x03(\x0b\x32\x33.opentelemetry.proto.profiles.v1development.Mapping\x12L\n\x0elocation_table\x18\x02 \x03(\x0b\x32\x34.opentelemetry.proto.profiles.v1development.Location\x12L\n\x0e\x66unction_table\x18\x03 \x03(\x0b\x32\x34.opentelemetry.proto.profiles.v1development.Function\x12\x44\n\nlink_table\x18\x04 \x03(\x0b\x32\x30.opentelemetry.proto.profiles.v1development.Link\x12\x14\n\x0cstring_table\x18\x05 \x03(\t\x12T\n\x0f\x61ttribute_table\x18\x06 \x03(\x0b\x32;.opentelemetry.proto.profiles.v1development.KeyValueAndUnit\x12\x46\n\x0bstack_table\x18\x07 \x03(\x0b\x32\x31.opentelemetry.proto.profiles.v1development.Stack\"\xbb\x01\n\x0cProfilesData\x12W\n\x11resource_profiles\x18\x01 \x03(\x0b\x32<.opentelemetry.proto.profiles.v1development.ResourceProfiles\x12R\n\ndictionary\x18\x02 \x01(\x0b\x32>.opentelemetry.proto.profiles.v1development.ProfilesDictionary\"\xbe\x01\n\x10ResourceProfiles\x12;\n\x08resource\x18\x01 \x01(\x0b\x32).opentelemetry.proto.resource.v1.Resource\x12Q\n\x0escope_profiles\x18\x02 \x03(\x0b\x32\x39.opentelemetry.proto.profiles.v1development.ScopeProfiles\x12\x12\n\nschema_url\x18\x03 \x01(\tJ\x06\x08\xe8\x07\x10\xe9\x07\"\xae\x01\n\rScopeProfiles\x12\x42\n\x05scope\x18\x01 \x01(\x0b\x32\x33.opentelemetry.proto.common.v1.InstrumentationScope\x12\x45\n\x08profiles\x18\x02 \x03(\x0b\x32\x33.opentelemetry.proto.profiles.v1development.Profile\x12\x12\n\nschema_url\x18\x03 \x01(\t\"\xcc\x03\n\x07Profile\x12J\n\x0bsample_type\x18\x01 \x01(\x0b\x32\x35.opentelemetry.proto.profiles.v1development.ValueType\x12\x42\n\x06sample\x18\x02 \x03(\x0b\x32\x32.opentelemetry.proto.profiles.v1development.Sample\x12\x16\n\x0etime_unix_nano\x18\x03 \x01(\x06\x12\x15\n\rduration_nano\x18\x04 \x01(\x04\x12J\n\x0bperiod_type\x18\x05 \x01(\x0b\x32\x35.opentelemetry.proto.profiles.v1development.ValueType\x12\x0e\n\x06period\x18\x06 \x01(\x03\x12\x1a\n\x12\x63omment_strindices\x18\x07 \x03(\x05\x12\x12\n\nprofile_id\x18\x08 \x01(\x0c\x12 \n\x18\x64ropped_attributes_count\x18\t \x01(\r\x12\x1f\n\x17original_payload_format\x18\n \x01(\t\x12\x18\n\x10original_payload\x18\x0b \x01(\x0c\x12\x19\n\x11\x61ttribute_indices\x18\x0c \x03(\x05\")\n\x04Link\x12\x10\n\x08trace_id\x18\x01 \x01(\x0c\x12\x0f\n\x07span_id\x18\x02 \x01(\x0c\"\x9e\x01\n\tValueType\x12\x15\n\rtype_strindex\x18\x01 \x01(\x05\x12\x15\n\runit_strindex\x18\x02 \x01(\x05\x12\x63\n\x17\x61ggregation_temporality\x18\x03 \x01(\x0e\x32\x42.opentelemetry.proto.profiles.v1development.AggregationTemporality\"z\n\x06Sample\x12\x13\n\x0bstack_index\x18\x01 \x01(\x05\x12\x0e\n\x06values\x18\x02 \x03(\x03\x12\x19\n\x11\x61ttribute_indices\x18\x03 \x03(\x05\x12\x12\n\nlink_index\x18\x04 \x01(\x05\x12\x1c\n\x14timestamps_unix_nano\x18\x05 \x03(\x06\"\x80\x01\n\x07Mapping\x12\x14\n\x0cmemory_start\x18\x01 \x01(\x04\x12\x14\n\x0cmemory_limit\x18\x02 \x01(\x04\x12\x13\n\x0b\x66ile_offset\x18\x03 \x01(\x04\x12\x19\n\x11\x66ilename_strindex\x18\x04 \x01(\x05\x12\x19\n\x11\x61ttribute_indices\x18\x05 \x03(\x05\"!\n\x05Stack\x12\x18\n\x10location_indices\x18\x01 \x03(\x05\"\x8d\x01\n\x08Location\x12\x15\n\rmapping_index\x18\x01 \x01(\x05\x12\x0f\n\x07\x61\x64\x64ress\x18\x02 \x01(\x04\x12>\n\x04line\x18\x03 \x03(\x0b\x32\x30.opentelemetry.proto.profiles.v1development.Line\x12\x19\n\x11\x61ttribute_indices\x18\x04 \x03(\x05\"<\n\x04Line\x12\x16\n\x0e\x66unction_index\x18\x01 \x01(\x05\x12\x0c\n\x04line\x18\x02 \x01(\x03\x12\x0e\n\x06\x63olumn\x18\x03 \x01(\x03\"n\n\x08\x46unction\x12\x15\n\rname_strindex\x18\x01 \x01(\x05\x12\x1c\n\x14system_name_strindex\x18\x02 \x01(\x05\x12\x19\n\x11\x66ilename_strindex\x18\x03 \x01(\x05\x12\x12\n\nstart_line\x18\x04 \x01(\x03\"v\n\x0fKeyValueAndUnit\x12\x14\n\x0ckey_strindex\x18\x01 \x01(\x05\x12\x36\n\x05value\x18\x02 \x01(\x0b\x32\'.opentelemetry.proto.common.v1.AnyValue\x12\x15\n\runit_strindex\x18\x03 \x01(\x05*\x8c\x01\n\x16\x41ggregationTemporality\x12\'\n#AGGREGATION_TEMPORALITY_UNSPECIFIED\x10\x00\x12!\n\x1d\x41GGREGATION_TEMPORALITY_DELTA\x10\x01\x12&\n\"AGGREGATION_TEMPORALITY_CUMULATIVE\x10\x02\x42\xa4\x01\n-io.opentelemetry.proto.profiles.v1developmentB\rProfilesProtoP\x01Z5go.opentelemetry.io/proto/otlp/profiles/v1development\xaa\x02*OpenTelemetry.Proto.Profiles.V1Developmentb\x06proto3" + +pool = ::Google::Protobuf::DescriptorPool.generated_pool +pool.add_serialized_file(descriptor_data) + +module Opentelemetry + module Proto + module Profiles + module V1development + ProfilesDictionary = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.ProfilesDictionary").msgclass + ProfilesData = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.ProfilesData").msgclass + ResourceProfiles = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.ResourceProfiles").msgclass + ScopeProfiles = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.ScopeProfiles").msgclass + Profile = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.Profile").msgclass + Link = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.Link").msgclass + ValueType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.ValueType").msgclass + Sample = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.Sample").msgclass + Mapping = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.Mapping").msgclass + Stack = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.Stack").msgclass + Location = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.Location").msgclass + Line = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.Line").msgclass + Function = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.Function").msgclass + KeyValueAndUnit = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.KeyValueAndUnit").msgclass + AggregationTemporality = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.profiles.v1development.AggregationTemporality").enummodule + end + end + end +end diff --git a/exporter/otlp-metrics/lib/opentelemetry/proto/resource/v1/resource_pb.rb b/exporter/otlp-metrics/lib/opentelemetry/proto/resource/v1/resource_pb.rb index 67abefd477..4cf69174ca 100644 --- a/exporter/otlp-metrics/lib/opentelemetry/proto/resource/v1/resource_pb.rb +++ b/exporter/otlp-metrics/lib/opentelemetry/proto/resource/v1/resource_pb.rb @@ -7,9 +7,9 @@ require 'opentelemetry/proto/common/v1/common_pb' -descriptor_data = "\n.opentelemetry/proto/resource/v1/resource.proto\x12\x1fopentelemetry.proto.resource.v1\x1a*opentelemetry/proto/common/v1/common.proto\"i\n\x08Resource\x12;\n\nattributes\x18\x01 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\x02 \x01(\rB\x83\x01\n\"io.opentelemetry.proto.resource.v1B\rResourceProtoP\x01Z*go.opentelemetry.io/proto/otlp/resource/v1\xaa\x02\x1fOpenTelemetry.Proto.Resource.V1b\x06proto3" +descriptor_data = "\n.opentelemetry/proto/resource/v1/resource.proto\x12\x1fopentelemetry.proto.resource.v1\x1a*opentelemetry/proto/common/v1/common.proto\"\xa8\x01\n\x08Resource\x12;\n\nattributes\x18\x01 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\x02 \x01(\r\x12=\n\x0b\x65ntity_refs\x18\x03 \x03(\x0b\x32(.opentelemetry.proto.common.v1.EntityRefB\x83\x01\n\"io.opentelemetry.proto.resource.v1B\rResourceProtoP\x01Z*go.opentelemetry.io/proto/otlp/resource/v1\xaa\x02\x1fOpenTelemetry.Proto.Resource.V1b\x06proto3" -pool = Google::Protobuf::DescriptorPool.generated_pool +pool = ::Google::Protobuf::DescriptorPool.generated_pool pool.add_serialized_file(descriptor_data) module Opentelemetry diff --git a/exporter/otlp-metrics/lib/opentelemetry/proto/trace/v1/trace_pb.rb b/exporter/otlp-metrics/lib/opentelemetry/proto/trace/v1/trace_pb.rb index cb45baa18b..de0f03ac87 100644 --- a/exporter/otlp-metrics/lib/opentelemetry/proto/trace/v1/trace_pb.rb +++ b/exporter/otlp-metrics/lib/opentelemetry/proto/trace/v1/trace_pb.rb @@ -8,9 +8,9 @@ require 'opentelemetry/proto/resource/v1/resource_pb' -descriptor_data = "\n(opentelemetry/proto/trace/v1/trace.proto\x12\x1copentelemetry.proto.trace.v1\x1a*opentelemetry/proto/common/v1/common.proto\x1a.opentelemetry/proto/resource/v1/resource.proto\"Q\n\nTracesData\x12\x43\n\x0eresource_spans\x18\x01 \x03(\x0b\x32+.opentelemetry.proto.trace.v1.ResourceSpans\"\xa7\x01\n\rResourceSpans\x12;\n\x08resource\x18\x01 \x01(\x0b\x32).opentelemetry.proto.resource.v1.Resource\x12=\n\x0bscope_spans\x18\x02 \x03(\x0b\x32(.opentelemetry.proto.trace.v1.ScopeSpans\x12\x12\n\nschema_url\x18\x03 \x01(\tJ\x06\x08\xe8\x07\x10\xe9\x07\"\x97\x01\n\nScopeSpans\x12\x42\n\x05scope\x18\x01 \x01(\x0b\x32\x33.opentelemetry.proto.common.v1.InstrumentationScope\x12\x31\n\x05spans\x18\x02 \x03(\x0b\x32\".opentelemetry.proto.trace.v1.Span\x12\x12\n\nschema_url\x18\x03 \x01(\t\"\xe6\x07\n\x04Span\x12\x10\n\x08trace_id\x18\x01 \x01(\x0c\x12\x0f\n\x07span_id\x18\x02 \x01(\x0c\x12\x13\n\x0btrace_state\x18\x03 \x01(\t\x12\x16\n\x0eparent_span_id\x18\x04 \x01(\x0c\x12\x0c\n\x04name\x18\x05 \x01(\t\x12\x39\n\x04kind\x18\x06 \x01(\x0e\x32+.opentelemetry.proto.trace.v1.Span.SpanKind\x12\x1c\n\x14start_time_unix_nano\x18\x07 \x01(\x06\x12\x1a\n\x12\x65nd_time_unix_nano\x18\x08 \x01(\x06\x12;\n\nattributes\x18\t \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\n \x01(\r\x12\x38\n\x06\x65vents\x18\x0b \x03(\x0b\x32(.opentelemetry.proto.trace.v1.Span.Event\x12\x1c\n\x14\x64ropped_events_count\x18\x0c \x01(\r\x12\x36\n\x05links\x18\r \x03(\x0b\x32\'.opentelemetry.proto.trace.v1.Span.Link\x12\x1b\n\x13\x64ropped_links_count\x18\x0e \x01(\r\x12\x34\n\x06status\x18\x0f \x01(\x0b\x32$.opentelemetry.proto.trace.v1.Status\x1a\x8c\x01\n\x05\x45vent\x12\x16\n\x0etime_unix_nano\x18\x01 \x01(\x06\x12\x0c\n\x04name\x18\x02 \x01(\t\x12;\n\nattributes\x18\x03 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\x04 \x01(\r\x1a\x9d\x01\n\x04Link\x12\x10\n\x08trace_id\x18\x01 \x01(\x0c\x12\x0f\n\x07span_id\x18\x02 \x01(\x0c\x12\x13\n\x0btrace_state\x18\x03 \x01(\t\x12;\n\nattributes\x18\x04 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\x05 \x01(\r\"\x99\x01\n\x08SpanKind\x12\x19\n\x15SPAN_KIND_UNSPECIFIED\x10\x00\x12\x16\n\x12SPAN_KIND_INTERNAL\x10\x01\x12\x14\n\x10SPAN_KIND_SERVER\x10\x02\x12\x14\n\x10SPAN_KIND_CLIENT\x10\x03\x12\x16\n\x12SPAN_KIND_PRODUCER\x10\x04\x12\x16\n\x12SPAN_KIND_CONSUMER\x10\x05\"\xae\x01\n\x06Status\x12\x0f\n\x07message\x18\x02 \x01(\t\x12=\n\x04\x63ode\x18\x03 \x01(\x0e\x32/.opentelemetry.proto.trace.v1.Status.StatusCode\"N\n\nStatusCode\x12\x15\n\x11STATUS_CODE_UNSET\x10\x00\x12\x12\n\x0eSTATUS_CODE_OK\x10\x01\x12\x15\n\x11STATUS_CODE_ERROR\x10\x02J\x04\x08\x01\x10\x02\x42w\n\x1fio.opentelemetry.proto.trace.v1B\nTraceProtoP\x01Z\'go.opentelemetry.io/proto/otlp/trace/v1\xaa\x02\x1cOpenTelemetry.Proto.Trace.V1b\x06proto3" +descriptor_data = "\n(opentelemetry/proto/trace/v1/trace.proto\x12\x1copentelemetry.proto.trace.v1\x1a*opentelemetry/proto/common/v1/common.proto\x1a.opentelemetry/proto/resource/v1/resource.proto\"Q\n\nTracesData\x12\x43\n\x0eresource_spans\x18\x01 \x03(\x0b\x32+.opentelemetry.proto.trace.v1.ResourceSpans\"\xa7\x01\n\rResourceSpans\x12;\n\x08resource\x18\x01 \x01(\x0b\x32).opentelemetry.proto.resource.v1.Resource\x12=\n\x0bscope_spans\x18\x02 \x03(\x0b\x32(.opentelemetry.proto.trace.v1.ScopeSpans\x12\x12\n\nschema_url\x18\x03 \x01(\tJ\x06\x08\xe8\x07\x10\xe9\x07\"\x97\x01\n\nScopeSpans\x12\x42\n\x05scope\x18\x01 \x01(\x0b\x32\x33.opentelemetry.proto.common.v1.InstrumentationScope\x12\x31\n\x05spans\x18\x02 \x03(\x0b\x32\".opentelemetry.proto.trace.v1.Span\x12\x12\n\nschema_url\x18\x03 \x01(\t\"\x84\x08\n\x04Span\x12\x10\n\x08trace_id\x18\x01 \x01(\x0c\x12\x0f\n\x07span_id\x18\x02 \x01(\x0c\x12\x13\n\x0btrace_state\x18\x03 \x01(\t\x12\x16\n\x0eparent_span_id\x18\x04 \x01(\x0c\x12\r\n\x05\x66lags\x18\x10 \x01(\x07\x12\x0c\n\x04name\x18\x05 \x01(\t\x12\x39\n\x04kind\x18\x06 \x01(\x0e\x32+.opentelemetry.proto.trace.v1.Span.SpanKind\x12\x1c\n\x14start_time_unix_nano\x18\x07 \x01(\x06\x12\x1a\n\x12\x65nd_time_unix_nano\x18\x08 \x01(\x06\x12;\n\nattributes\x18\t \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\n \x01(\r\x12\x38\n\x06\x65vents\x18\x0b \x03(\x0b\x32(.opentelemetry.proto.trace.v1.Span.Event\x12\x1c\n\x14\x64ropped_events_count\x18\x0c \x01(\r\x12\x36\n\x05links\x18\r \x03(\x0b\x32\'.opentelemetry.proto.trace.v1.Span.Link\x12\x1b\n\x13\x64ropped_links_count\x18\x0e \x01(\r\x12\x34\n\x06status\x18\x0f \x01(\x0b\x32$.opentelemetry.proto.trace.v1.Status\x1a\x8c\x01\n\x05\x45vent\x12\x16\n\x0etime_unix_nano\x18\x01 \x01(\x06\x12\x0c\n\x04name\x18\x02 \x01(\t\x12;\n\nattributes\x18\x03 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\x04 \x01(\r\x1a\xac\x01\n\x04Link\x12\x10\n\x08trace_id\x18\x01 \x01(\x0c\x12\x0f\n\x07span_id\x18\x02 \x01(\x0c\x12\x13\n\x0btrace_state\x18\x03 \x01(\t\x12;\n\nattributes\x18\x04 \x03(\x0b\x32\'.opentelemetry.proto.common.v1.KeyValue\x12 \n\x18\x64ropped_attributes_count\x18\x05 \x01(\r\x12\r\n\x05\x66lags\x18\x06 \x01(\x07\"\x99\x01\n\x08SpanKind\x12\x19\n\x15SPAN_KIND_UNSPECIFIED\x10\x00\x12\x16\n\x12SPAN_KIND_INTERNAL\x10\x01\x12\x14\n\x10SPAN_KIND_SERVER\x10\x02\x12\x14\n\x10SPAN_KIND_CLIENT\x10\x03\x12\x16\n\x12SPAN_KIND_PRODUCER\x10\x04\x12\x16\n\x12SPAN_KIND_CONSUMER\x10\x05\"\xae\x01\n\x06Status\x12\x0f\n\x07message\x18\x02 \x01(\t\x12=\n\x04\x63ode\x18\x03 \x01(\x0e\x32/.opentelemetry.proto.trace.v1.Status.StatusCode\"N\n\nStatusCode\x12\x15\n\x11STATUS_CODE_UNSET\x10\x00\x12\x12\n\x0eSTATUS_CODE_OK\x10\x01\x12\x15\n\x11STATUS_CODE_ERROR\x10\x02J\x04\x08\x01\x10\x02*\x9c\x01\n\tSpanFlags\x12\x19\n\x15SPAN_FLAGS_DO_NOT_USE\x10\x00\x12 \n\x1bSPAN_FLAGS_TRACE_FLAGS_MASK\x10\xff\x01\x12*\n%SPAN_FLAGS_CONTEXT_HAS_IS_REMOTE_MASK\x10\x80\x02\x12&\n!SPAN_FLAGS_CONTEXT_IS_REMOTE_MASK\x10\x80\x04\x42w\n\x1fio.opentelemetry.proto.trace.v1B\nTraceProtoP\x01Z\'go.opentelemetry.io/proto/otlp/trace/v1\xaa\x02\x1cOpenTelemetry.Proto.Trace.V1b\x06proto3" -pool = Google::Protobuf::DescriptorPool.generated_pool +pool = ::Google::Protobuf::DescriptorPool.generated_pool pool.add_serialized_file(descriptor_data) module Opentelemetry @@ -26,6 +26,7 @@ module V1 Span::SpanKind = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.Span.SpanKind").enummodule Status = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.Status").msgclass Status::StatusCode = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.Status.StatusCode").enummodule + SpanFlags = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("opentelemetry.proto.trace.v1.SpanFlags").enummodule end end end From c8ccd86295aef0ea0f00e837140bf7f836ef0506 Mon Sep 17 00:00:00 2001 From: Kayla Reopelle <87386821+kaylareopelle@users.noreply.github.com> Date: Fri, 17 Oct 2025 10:37:50 -0700 Subject: [PATCH 04/13] ci: Add PRs and Issues perms for release hooks (#1940) These were missed on earlier updates related to OTel security requirements --- .github/workflows/release-hook-on-closed.yml | 2 ++ .github/workflows/release-retry.yml | 2 ++ 2 files changed, 4 insertions(+) diff --git a/.github/workflows/release-hook-on-closed.yml b/.github/workflows/release-hook-on-closed.yml index 17bcbccd7f..074cc989c5 100644 --- a/.github/workflows/release-hook-on-closed.yml +++ b/.github/workflows/release-hook-on-closed.yml @@ -12,6 +12,8 @@ jobs: if: ${{ github.repository == 'open-telemetry/opentelemetry-ruby' }} permissions: contents: write # required for creating releases + pull-requests: write # required for updating label on PR, posting comments + issues: write # required for creating new issues on failed releases env: ruby_version: "3.1" runs-on: ubuntu-latest diff --git a/.github/workflows/release-retry.yml b/.github/workflows/release-retry.yml index 50479da2aa..93e6a1f53c 100644 --- a/.github/workflows/release-retry.yml +++ b/.github/workflows/release-retry.yml @@ -19,6 +19,8 @@ jobs: if: ${{ github.repository == 'open-telemetry/opentelemetry-ruby' }} permissions: contents: write # required for creating releases + pull-requests: write # required for updating open release PRs + issues: write # required for creating new issues on failed releases env: ruby_version: "3.1" runs-on: ubuntu-latest From 4c01e9e9f55d7465b262371bcc5d07941fa9a304 Mon Sep 17 00:00:00 2001 From: "otelbot-ruby[bot]" <231965978+otelbot-ruby[bot]@users.noreply.github.com> Date: Fri, 17 Oct 2025 11:39:27 -0700 Subject: [PATCH 05/13] release: Release 2 gems (#1946) * release: Release 2 gems * opentelemetry-exporter-otlp-metrics 0.6.1 (was 0.6.0) * opentelemetry-exporter-otlp-logs 0.2.2 (was 0.2.1) * Apply suggestions from code review --------- Co-authored-by: otelbot <197425009+otelbot@users.noreply.github.com> Co-authored-by: Kayla Reopelle <87386821+kaylareopelle@users.noreply.github.com> --- exporter/otlp-logs/CHANGELOG.md | 4 ++++ .../otlp-logs/lib/opentelemetry/exporter/otlp/logs/version.rb | 2 +- exporter/otlp-metrics/CHANGELOG.md | 4 ++++ .../lib/opentelemetry/exporter/otlp/metrics/version.rb | 2 +- 4 files changed, 10 insertions(+), 2 deletions(-) diff --git a/exporter/otlp-logs/CHANGELOG.md b/exporter/otlp-logs/CHANGELOG.md index 1823d54acd..f70ef7030b 100644 --- a/exporter/otlp-logs/CHANGELOG.md +++ b/exporter/otlp-logs/CHANGELOG.md @@ -1,5 +1,9 @@ # Release History: opentelemetry-exporter-otlp-logs +### v0.2.2 / 2025-10-17 + +* FIXED: Increase OTLP Proto version to 1.8.0 to match version in opentelemetry-exporter-otlp + ### v0.2.1 / 2025-08-14 - FIXED: Support hash bodies and attribute values in OTLP logs exporter diff --git a/exporter/otlp-logs/lib/opentelemetry/exporter/otlp/logs/version.rb b/exporter/otlp-logs/lib/opentelemetry/exporter/otlp/logs/version.rb index 1c0d508fc4..a167460674 100644 --- a/exporter/otlp-logs/lib/opentelemetry/exporter/otlp/logs/version.rb +++ b/exporter/otlp-logs/lib/opentelemetry/exporter/otlp/logs/version.rb @@ -9,7 +9,7 @@ module Exporter module OTLP module Logs ## Current OpenTelemetry OTLP logs exporter version - VERSION = '0.2.1' + VERSION = '0.2.2' end end end diff --git a/exporter/otlp-metrics/CHANGELOG.md b/exporter/otlp-metrics/CHANGELOG.md index c0854dd257..8ad7756705 100644 --- a/exporter/otlp-metrics/CHANGELOG.md +++ b/exporter/otlp-metrics/CHANGELOG.md @@ -1,5 +1,9 @@ # Release History: opentelemetry-exporter-otlp-metrics +### v0.6.1 / 2025-10-17 + +* FIXED: Increase OTLP Proto version to 1.8.0 to match version in opentelemetry-exporter-otlp + ### v0.6.0 / 2025-08-14 - ADDED: Add support for exporting asynchronous instruments diff --git a/exporter/otlp-metrics/lib/opentelemetry/exporter/otlp/metrics/version.rb b/exporter/otlp-metrics/lib/opentelemetry/exporter/otlp/metrics/version.rb index f288a44ccc..43de813309 100644 --- a/exporter/otlp-metrics/lib/opentelemetry/exporter/otlp/metrics/version.rb +++ b/exporter/otlp-metrics/lib/opentelemetry/exporter/otlp/metrics/version.rb @@ -9,7 +9,7 @@ module Exporter module OTLP module Metrics ## Current OpenTelemetry OTLP exporter version - VERSION = '0.6.0' + VERSION = '0.6.1' end end end From f2d76a2d138f175382379a89109ecb1d6073de4f Mon Sep 17 00:00:00 2001 From: Mark Sta Ana <192864+booyaa@users.noreply.github.com> Date: Fri, 17 Oct 2025 20:06:27 +0100 Subject: [PATCH 06/13] fix(gem): Requires minimum SDK support for new parent_span_is_remote attribute (#1942) Fixes #1941 Co-authored-by: Kayla Reopelle <87386821+kaylareopelle@users.noreply.github.com> --- exporter/otlp/opentelemetry-exporter-otlp.gemspec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/exporter/otlp/opentelemetry-exporter-otlp.gemspec b/exporter/otlp/opentelemetry-exporter-otlp.gemspec index 77fe87c658..e0dfd6b525 100644 --- a/exporter/otlp/opentelemetry-exporter-otlp.gemspec +++ b/exporter/otlp/opentelemetry-exporter-otlp.gemspec @@ -29,7 +29,7 @@ Gem::Specification.new do |spec| spec.add_dependency 'google-protobuf', '>= 3.18' spec.add_dependency 'opentelemetry-api', '~> 1.1' spec.add_dependency 'opentelemetry-common', '~> 0.20' - spec.add_dependency 'opentelemetry-sdk', '~> 1.2' + spec.add_dependency 'opentelemetry-sdk', '~> 1.10' spec.add_dependency 'opentelemetry-semantic_conventions' spec.add_development_dependency 'appraisal', '~> 2.2.0' From fbaea7dfe23d98febb19e99b084ab12fa778be0e Mon Sep 17 00:00:00 2001 From: Xuan <112967240+xuan-cao-swi@users.noreply.github.com> Date: Fri, 17 Oct 2025 16:01:42 -0400 Subject: [PATCH 07/13] fix: add test case for metric_store and metric_view (#1894) * test: test case for metric_stream and store * update test case * refine the test case; safeguard the callback * remove typo * replace unsafe timeout.timeout with thread join time * test fix * sleep 0.2 * skip some test for truffleruby * update test case * lint * skip thread related test * remove unstable test due to thread management * lint --------- Co-authored-by: Kayla Reopelle <87386821+kaylareopelle@users.noreply.github.com> --- .../state/asynchronous_metric_stream.rb | 47 ++- .../sdk/metrics/state/metric_stream.rb | 1 + .../state/asynchronous_metric_stream_test.rb | 274 ++++++++++++++++++ .../sdk/metrics/state/metric_store_test.rb | 104 ++++++- .../sdk/metrics/state/metric_stream_test.rb | 246 ++++++++++++++++ 5 files changed, 658 insertions(+), 14 deletions(-) create mode 100644 metrics_sdk/test/opentelemetry/sdk/metrics/state/asynchronous_metric_stream_test.rb diff --git a/metrics_sdk/lib/opentelemetry/sdk/metrics/state/asynchronous_metric_stream.rb b/metrics_sdk/lib/opentelemetry/sdk/metrics/state/asynchronous_metric_stream.rb index 7f4752695f..7b48524cdb 100644 --- a/metrics_sdk/lib/opentelemetry/sdk/metrics/state/asynchronous_metric_stream.rb +++ b/metrics_sdk/lib/opentelemetry/sdk/metrics/state/asynchronous_metric_stream.rb @@ -13,6 +13,8 @@ module State # The AsynchronousMetricStream class provides SDK internal functionality that is not a part of the # public API. It extends MetricStream to support asynchronous instruments. class AsynchronousMetricStream < MetricStream + DEFAULT_TIMEOUT = 30 + def initialize( name, description, @@ -48,28 +50,49 @@ def collect(start_time, end_time) def invoke_callback(timeout, attributes) if @registered_views.empty? @mutex.synchronize do - Timeout.timeout(timeout || 30) do - @callback.each do |cb| - value = cb.call - @default_aggregation.update(value, attributes, @data_points) - end + @callback.each do |cb| + value = safe_guard_callback(cb, timeout: timeout) + @default_aggregation.update(value, attributes, @data_points) if value.is_a?(Numeric) end end else @registered_views.each do |view| @mutex.synchronize do - Timeout.timeout(timeout || 30) do - @callback.each do |cb| - value = cb.call - merged_attributes = attributes || {} - merged_attributes.merge!(view.attribute_keys) - view.aggregation.update(value, merged_attributes, @data_points) if view.valid_aggregation? - end + @callback.each do |cb| + value = safe_guard_callback(cb, timeout: timeout) + next unless value.is_a?(Numeric) # ignore if value is not valid number + + merged_attributes = attributes || {} + merged_attributes.merge!(view.attribute_keys) + view.aggregation.update(value, merged_attributes, @data_points) if view.valid_aggregation? end end end end end + + private + + def safe_guard_callback(callback, timeout: DEFAULT_TIMEOUT) + result = nil + thread = Thread.new do + result = callback.call + rescue StandardError => e + OpenTelemetry.logger.error("Error invoking callback: #{e.message}") + result = :error + end + + unless thread.join(timeout) + thread.kill + OpenTelemetry.logger.error("Timeout while invoking callback after #{timeout} seconds") + return nil + end + + result == :error ? nil : result + rescue StandardError => e + OpenTelemetry.logger.error("Unexpected error in callback execution: #{e.message}") + nil + end end end end diff --git a/metrics_sdk/lib/opentelemetry/sdk/metrics/state/metric_stream.rb b/metrics_sdk/lib/opentelemetry/sdk/metrics/state/metric_stream.rb index 3fa3bd684c..1c7e9a177a 100644 --- a/metrics_sdk/lib/opentelemetry/sdk/metrics/state/metric_stream.rb +++ b/metrics_sdk/lib/opentelemetry/sdk/metrics/state/metric_stream.rb @@ -55,6 +55,7 @@ def collect(start_time, end_time) end end + # view will modify the data_point that is not suitable when there are multiple views def update(value, attributes) if @registered_views.empty? @mutex.synchronize { @default_aggregation.update(value, attributes, @data_points) } diff --git a/metrics_sdk/test/opentelemetry/sdk/metrics/state/asynchronous_metric_stream_test.rb b/metrics_sdk/test/opentelemetry/sdk/metrics/state/asynchronous_metric_stream_test.rb new file mode 100644 index 0000000000..3435752f08 --- /dev/null +++ b/metrics_sdk/test/opentelemetry/sdk/metrics/state/asynchronous_metric_stream_test.rb @@ -0,0 +1,274 @@ +# frozen_string_literal: true + +# Copyright The OpenTelemetry Authors +# +# SPDX-License-Identifier: Apache-2.0 + +require 'test_helper' + +describe OpenTelemetry::SDK::Metrics::State::AsynchronousMetricStream do + let(:meter_provider) { OpenTelemetry::SDK::Metrics::MeterProvider.new } + let(:instrumentation_scope) { OpenTelemetry::SDK::InstrumentationScope.new('test_scope', '1.0.0') } + let(:aggregation) { OpenTelemetry::SDK::Metrics::Aggregation::Sum.new } + let(:callback) { [proc { 42 }] } + let(:timeout) { 10 } + let(:attributes) { { 'environment' => 'test' } } + let(:async_metric_stream) do + OpenTelemetry::SDK::Metrics::State::AsynchronousMetricStream.new( + 'async_counter', + 'An async counter', + 'count', + :observable_counter, + meter_provider, + instrumentation_scope, + aggregation, + callback, + timeout, + attributes + ) + end + + describe '#initialize' do + it 'initializes with provided parameters and async-specific attributes' do + _(async_metric_stream.name).must_equal('async_counter') + _(async_metric_stream.description).must_equal('An async counter') + _(async_metric_stream.unit).must_equal('count') + _(async_metric_stream.instrument_kind).must_equal(:observable_counter) + _(async_metric_stream.instrumentation_scope).must_equal(instrumentation_scope) + _(async_metric_stream.data_points).must_be_instance_of(Hash) + _(async_metric_stream.data_points).must_be_empty + + # Verify async-specific attributes + _(async_metric_stream.instance_variable_get(:@callback)).must_equal(callback) + _(async_metric_stream.instance_variable_get(:@timeout)).must_equal(timeout) + _(async_metric_stream.instance_variable_get(:@start_time)).must_be_instance_of(Integer) + _(async_metric_stream.instance_variable_get(:@start_time)).must_be :>, 0 + end + + it 'finds and registers matching views during initialization' do + view = OpenTelemetry::SDK::Metrics::View::RegisteredView.new( + 'async_counter', + aggregation: OpenTelemetry::SDK::Metrics::Aggregation::LastValue.new + ) + meter_provider.instance_variable_get(:@registered_views) << view + + stream = OpenTelemetry::SDK::Metrics::State::AsynchronousMetricStream.new( + 'async_counter', + 'An async counter', + 'count', + :observable_counter, + meter_provider, + instrumentation_scope, + aggregation, + callback, + timeout, + attributes + ) + + registered_views = stream.instance_variable_get(:@registered_views) + _(registered_views.size).must_equal(1) + _(registered_views.first.aggregation.class).must_equal ::OpenTelemetry::SDK::Metrics::Aggregation::LastValue + end + end + + describe '#collect' do + it 'invokes callback and handles various collection scenarios' do + # Test basic collection with callback value and attributes + metric_data_array = async_metric_stream.collect(0, 1000) + _(metric_data_array).must_be_instance_of(Array) + _(metric_data_array.size).must_equal(1) + + metric_data = metric_data_array.first + _(metric_data).must_be_instance_of(OpenTelemetry::SDK::Metrics::State::MetricData) + _(metric_data.name).must_equal('async_counter') + _(metric_data.start_time_unix_nano).must_equal(0) + _(metric_data.time_unix_nano).must_equal(1000) + _(metric_data.data_points.first.value).must_equal(42) + _(metric_data.data_points.first.attributes).must_equal(attributes) + + # Test empty collection when callback returns nil + empty_callback = [proc { nil }] + empty_stream = OpenTelemetry::SDK::Metrics::State::AsynchronousMetricStream.new( + 'async_counter', 'description', 'unit', :observable_counter, + meter_provider, instrumentation_scope, aggregation, + empty_callback, timeout, {} + ) + _(empty_stream.collect(0, 1000)).must_be_empty + + # Test multiple callbacks accumulation + multi_callbacks = [proc { 10 }, proc { 20 }, proc { 30 }] + multi_stream = OpenTelemetry::SDK::Metrics::State::AsynchronousMetricStream.new( + 'async_counter', 'description', 'unit', :observable_counter, + meter_provider, instrumentation_scope, aggregation, + multi_callbacks, timeout, attributes + ) + multi_result = multi_stream.collect(0, 1000) + _(multi_result.first.data_points.first.value).must_equal(60) # 10 + 20 + 30 + end + + it 'handles multiple registered views with attribute merging' do + view1 = OpenTelemetry::SDK::Metrics::View::RegisteredView.new( + 'async_counter', + aggregation: OpenTelemetry::SDK::Metrics::Aggregation::Sum.new + ) + view2 = OpenTelemetry::SDK::Metrics::View::RegisteredView.new( + 'async_counter', + aggregation: OpenTelemetry::SDK::Metrics::Aggregation::LastValue.new, + attribute_keys: { 'environment' => 'production', 'service' => 'metrics' } + ) + + meter_provider.instance_variable_get(:@registered_views) << view1 + meter_provider.instance_variable_get(:@registered_views) << view2 + + stream = OpenTelemetry::SDK::Metrics::State::AsynchronousMetricStream.new( + 'async_counter', 'description', 'unit', :observable_counter, + meter_provider, instrumentation_scope, aggregation, + callback, timeout, { 'original' => 'value' } + ) + + metric_data_array = stream.collect(0, 1000) + _(metric_data_array.size).must_equal(2) + + # Verify view with attribute merging + view_with_attrs = metric_data_array.find { |md| md.data_points.first.attributes.key?('service') } + _(view_with_attrs).wont_be_nil + attrs = view_with_attrs.data_points.first.attributes + _(attrs['environment']).must_equal('production') + _(attrs['service']).must_equal('metrics') + _(attrs['original']).must_equal('value') + end + + it 'handles callback exceptions' do + error_callback = [proc { raise StandardError, 'Callback error' }] + error_stream = OpenTelemetry::SDK::Metrics::State::AsynchronousMetricStream.new( + 'async_counter', 'description', 'unit', :observable_counter, + meter_provider, instrumentation_scope, aggregation, + error_callback, timeout, attributes + ) + + # Capture the logged output + original_logger = OpenTelemetry.logger + log_output = StringIO.new + OpenTelemetry.logger = Logger.new(log_output) + error_stream.collect(0, 1000) + assert_includes log_output.string, 'Error invoking callback: Callback error' + OpenTelemetry.logger = original_logger + end + end + + describe '#invoke_callback' do + it 'executes callbacks with timeout and handles thread safety with multiple callback' do + # Test multiple callbacks in array + multi_callbacks = [ + proc { 10 }, + proc { 20 }, + proc { 30 } + ] + multi_stream = OpenTelemetry::SDK::Metrics::State::AsynchronousMetricStream.new( + 'async_counter', 'description', 'unit', :observable_counter, + meter_provider, instrumentation_scope, aggregation, + multi_callbacks, timeout, attributes + ) + multi_stream.invoke_callback(timeout, attributes) + + # Test thread safety + thread_count = 0 + thread_callback = [proc { + thread_count += 1 + 42 + }] + thread_stream = OpenTelemetry::SDK::Metrics::State::AsynchronousMetricStream.new( + 'async_counter', 'description', 'unit', :observable_counter, + meter_provider, instrumentation_scope, aggregation, + thread_callback, timeout, attributes + ) + + metric_data = nil + threads = Array.new(5) do + # Thread.new { thread_stream.invoke_callback(timeout, attributes) } + Thread.new { metric_data = thread_stream.collect(0, 10_000) } + end + threads.each(&:join) + + _(thread_count).must_equal(5) + _(metric_data.first.data_points.first.value).must_equal 210 + _(metric_data.first.data_points.first.attributes['environment']).must_equal 'test' + _(metric_data.first.start_time_unix_nano).must_equal 0 + _(metric_data.first.time_unix_nano).must_equal 10_000 + end + end + + describe 'aggregation and view integration' do + it 'supports different aggregation types and accumulation' do + # Test Sum aggregation accumulation + callback_value = 100 + callback_proc = [proc { callback_value }] + stream = OpenTelemetry::SDK::Metrics::State::AsynchronousMetricStream.new( + 'async_counter', 'description', 'unit', :observable_counter, + meter_provider, instrumentation_scope, aggregation, + callback_proc, timeout, attributes + ) + + stream.collect(0, 1000) + metric_data = stream.collect(1000, 2000) + _(metric_data.first.data_points.first.value).must_equal 200 + + # Test LastValue aggregation + last_value_aggregation = OpenTelemetry::SDK::Metrics::Aggregation::LastValue.new + stream = OpenTelemetry::SDK::Metrics::State::AsynchronousMetricStream.new( + 'async_gauge', 'description', 'units', :observable_gauge, + meter_provider, instrumentation_scope, last_value_aggregation, + callback_proc, timeout, attributes + ) + + # Calling it twice but last value should preserve last one instead of sum + stream.collect(0, 1000) + metric_data = stream.collect(0, 1000) + _(metric_data.first.data_points.first.value).must_equal 100 + end + + it 'handles view filtering and drop aggregation' do + # Test view filtering by instrument name (non-matching) + non_matching_view = OpenTelemetry::SDK::Metrics::View::RegisteredView.new( + 'different_counter', + aggregation: OpenTelemetry::SDK::Metrics::Aggregation::LastValue.new + ) + + # Test view filtering by instrument type (matching) + type_matching_view = OpenTelemetry::SDK::Metrics::View::RegisteredView.new( + nil, type: :observable_counter, + aggregation: OpenTelemetry::SDK::Metrics::Aggregation::LastValue.new + ) + + meter_provider.instance_variable_get(:@registered_views) << non_matching_view + meter_provider.instance_variable_get(:@registered_views) << type_matching_view + + stream = OpenTelemetry::SDK::Metrics::State::AsynchronousMetricStream.new( + 'async_counter', 'description', 'unit', :observable_counter, + meter_provider, instrumentation_scope, aggregation, + callback, timeout, attributes + ) + + metric_data = stream.collect(0, 1000) + _(metric_data.size).must_equal(1) # Should match type-based view + + # Test Drop aggregation + drop_view = OpenTelemetry::SDK::Metrics::View::RegisteredView.new( + 'async_counter', + aggregation: OpenTelemetry::SDK::Metrics::Aggregation::Drop.new + ) + meter_provider.instance_variable_get(:@registered_views).clear + meter_provider.instance_variable_get(:@registered_views) << drop_view + + drop_stream = OpenTelemetry::SDK::Metrics::State::AsynchronousMetricStream.new( + 'async_counter', 'description', 'unit', :observable_counter, + meter_provider, instrumentation_scope, aggregation, + callback, timeout, attributes + ) + + dropped_data = drop_stream.collect(0, 1000) + _(dropped_data.size).must_equal(1) + _(dropped_data.first.data_points.first.value).must_equal(0) # Dropped value + end + end +end diff --git a/metrics_sdk/test/opentelemetry/sdk/metrics/state/metric_store_test.rb b/metrics_sdk/test/opentelemetry/sdk/metrics/state/metric_store_test.rb index 01cd0fcf9e..cd25df3db1 100644 --- a/metrics_sdk/test/opentelemetry/sdk/metrics/state/metric_store_test.rb +++ b/metrics_sdk/test/opentelemetry/sdk/metrics/state/metric_store_test.rb @@ -7,9 +7,109 @@ require 'test_helper' describe OpenTelemetry::SDK::Metrics::State::MetricStore do - describe '#collect' do + let(:metric_store) { OpenTelemetry::SDK::Metrics::State::MetricStore.new } + let(:meter_provider) { OpenTelemetry::SDK::Metrics::MeterProvider.new } + let(:instrumentation_scope) { OpenTelemetry::SDK::InstrumentationScope.new('test_scope', '1.0.0') } + let(:aggregation) { OpenTelemetry::SDK::Metrics::Aggregation::Sum.new } + + describe '#initialize' do + it 'initializes with empty metric streams' do + store = OpenTelemetry::SDK::Metrics::State::MetricStore.new + _(store).must_be_instance_of(OpenTelemetry::SDK::Metrics::State::MetricStore) + end end - describe '#add_metric_stream' do + describe '#collect' do + it 'returns empty array when no metric streams are added' do + snapshot = metric_store.collect + _(snapshot).must_be_instance_of(Array) + _(snapshot).must_be_empty + end + + it 'collects data from added metric streams' do + metric_stream = OpenTelemetry::SDK::Metrics::State::MetricStream.new( + 'test_counter', + 'A test counter', + 'count', + :counter, + meter_provider, + instrumentation_scope, + aggregation + ) + + # Add some data to the metric stream + metric_store.add_metric_stream(metric_stream) + metric_stream.update(10, {}) + + snapshot = metric_store.collect + _(snapshot).must_be_instance_of(Array) + _(snapshot.size).must_equal(1) + _(snapshot.first).must_be_instance_of(OpenTelemetry::SDK::Metrics::State::MetricData) + _(snapshot.first.name).must_equal('test_counter') + end + + it 'collects data from multiple metric streams' do + metric_stream1 = OpenTelemetry::SDK::Metrics::State::MetricStream.new( + 'test_counter1', + 'A test counter 1', + 'count', + :counter, + meter_provider, + instrumentation_scope, + aggregation + ) + + metric_stream2 = OpenTelemetry::SDK::Metrics::State::MetricStream.new( + 'test_counter2', + 'A test counter 2', + 'count', + :counter, + meter_provider, + instrumentation_scope, + aggregation + ) + + metric_store.add_metric_stream(metric_stream1) + metric_store.add_metric_stream(metric_stream2) + + metric_stream1.update(10, {}) + metric_stream2.update(20, {}) + + snapshot = metric_store.collect + _(snapshot.size).must_equal(2) + names = snapshot.map(&:name) + _(names).must_include('test_counter1') + _(names).must_include('test_counter2') + end + + it 'updates epoch times on each collection' do + metric_stream = OpenTelemetry::SDK::Metrics::State::MetricStream.new( + 'test_counter', + 'A test counter', + 'count', + :counter, + meter_provider, + instrumentation_scope, + aggregation + ) + + metric_store.add_metric_stream(metric_stream) + + # First collection + metric_stream.update(10, {}) + snapshot1 = metric_store.collect + end_time1 = snapshot1.first.time_unix_nano + + sleep(0.001) # Small delay to ensure different timestamps + + # Second collection + metric_stream.update(10, {}) + snapshot2 = metric_store.collect + start_time2 = snapshot2.first.start_time_unix_nano + end_time2 = snapshot2.first.time_unix_nano + + _(start_time2).must_equal(end_time1) + _(end_time2).must_be :>, end_time1 + end end end diff --git a/metrics_sdk/test/opentelemetry/sdk/metrics/state/metric_stream_test.rb b/metrics_sdk/test/opentelemetry/sdk/metrics/state/metric_stream_test.rb index 8a0084101d..b7512c74b2 100644 --- a/metrics_sdk/test/opentelemetry/sdk/metrics/state/metric_stream_test.rb +++ b/metrics_sdk/test/opentelemetry/sdk/metrics/state/metric_stream_test.rb @@ -7,6 +7,252 @@ require 'test_helper' describe OpenTelemetry::SDK::Metrics::State::MetricStream do + let(:meter_provider) { OpenTelemetry::SDK::Metrics::MeterProvider.new } + let(:instrumentation_scope) { OpenTelemetry::SDK::InstrumentationScope.new('test_scope', '1.0.0') } + let(:aggregation) { OpenTelemetry::SDK::Metrics::Aggregation::Sum.new } + let(:metric_stream) do + OpenTelemetry::SDK::Metrics::State::MetricStream.new( + 'test_counter', + 'A test counter', + 'count', + :counter, + meter_provider, + instrumentation_scope, + aggregation + ) + end + + describe '#initialize' do + it 'initializes with provided parameters' do + _(metric_stream.name).must_equal('test_counter') + _(metric_stream.description).must_equal('A test counter') + _(metric_stream.unit).must_equal('count') + _(metric_stream.instrument_kind).must_equal(:counter) + _(metric_stream.instrumentation_scope).must_equal(instrumentation_scope) + _(metric_stream.data_points).must_be_instance_of(Hash) + _(metric_stream.data_points).must_be_empty + end + + it 'initializes registered views from meter provider' do + view = OpenTelemetry::SDK::Metrics::View::RegisteredView.new( + 'test_counter', + aggregation: OpenTelemetry::SDK::Metrics::Aggregation::LastValue.new + ) + meter_provider.instance_variable_get(:@registered_views) << view + + stream = OpenTelemetry::SDK::Metrics::State::MetricStream.new( + 'test_counter', + 'A test counter', + 'count', + :counter, + meter_provider, + instrumentation_scope, + aggregation + ) + + registered_views = stream.instance_variable_get(:@registered_views) + _(registered_views.size).must_equal(1) + _(registered_views.first).must_equal(view) + end + end + describe '#update' do + it 'updates aggregation with various value and attribute combinations' do + # Test updates with different attributes (should create separate data points) + metric_stream.update(10, { 'key' => 'value' }) + metric_stream.update(20, { 'same_key' => 'same_value' }) + metric_stream.update(30, { 'same_key' => 'same_value' }) # Accumulated value + metric_stream.update(5, { 'key1' => 'value1' }) + metric_stream.update(8, { 'key2' => 'value2' }) + + snapshot = metric_stream.collect(0, 1000) + _(snapshot.size).must_equal(1) + + # Verify data points for different attribute combinations + data_points = snapshot.first.data_points + _(data_points.size).must_be :>=, 3 # At least 3 different attribute combinations + + # Verify accumulated value for same_key attributes + same_key_point = data_points.find { |dp| dp.attributes['same_key'] == 'same_value' } + _(same_key_point).wont_be_nil + _(same_key_point.value).must_equal(50) # 20 + 30 = 50 + + # Verify individual attribute combinations + key1_point = data_points.find { |dp| dp.attributes['key1'] == 'value1' } + key2_point = data_points.find { |dp| dp.attributes['key2'] == 'value2' } + _(key1_point).wont_be_nil + _(key2_point).wont_be_nil + _(key1_point.value).must_equal(5) + _(key2_point.value).must_equal(8) + end + + it 'handles registered views with attribute merging' do + view = OpenTelemetry::SDK::Metrics::View::RegisteredView.new( + 'test_counter', + aggregation: OpenTelemetry::SDK::Metrics::Aggregation::LastValue.new, + attribute_keys: { 'environment' => 'test' } + ) + meter_provider.instance_variable_get(:@registered_views) << view + + stream = OpenTelemetry::SDK::Metrics::State::MetricStream.new( + 'test_counter', + 'A test counter', + 'count', + :counter, + meter_provider, + instrumentation_scope, + aggregation + ) + + stream.update(10, { 'original' => 'value' }) + stream.update(20, { 'original' => 'value' }) + + snapshot = stream.collect(0, 1000) + _(snapshot.size).must_equal(1) + + # Check that attributes were merged + attributes = snapshot.first.data_points.first.attributes + _(attributes['environment']).must_equal('test') + _(attributes['original']).must_equal('value') + + value = snapshot.first.data_points.first.value + _(value).must_equal 20 + end + end + + describe '#collect' do + it 'returns empty array when no data points' do + snapshot = metric_stream.collect(0, 1000) + _(snapshot).must_be_instance_of(Array) + _(snapshot).must_be_empty + end + + it 'returns metric data when data points exist' do + metric_stream.update(10, { 'key' => 'value' }) + snapshot = metric_stream.collect(0, 1000) + + _(snapshot.size).must_equal(1) + metric_data = snapshot.first + _(metric_data).must_be_instance_of(OpenTelemetry::SDK::Metrics::State::MetricData) + _(metric_data.name).must_equal('test_counter') + _(metric_data.description).must_equal('A test counter') + _(metric_data.unit).must_equal('count') + _(metric_data.instrument_kind).must_equal(:counter) + end + + it 'handles multiple registered views' do + view1 = OpenTelemetry::SDK::Metrics::View::RegisteredView.new( + 'test_counter', + aggregation: OpenTelemetry::SDK::Metrics::Aggregation::Sum.new + ) + view2 = OpenTelemetry::SDK::Metrics::View::RegisteredView.new( + 'test_counter', + aggregation: OpenTelemetry::SDK::Metrics::Aggregation::LastValue.new + ) + + meter_provider.instance_variable_get(:@registered_views) << view1 + meter_provider.instance_variable_get(:@registered_views) << view2 + + stream = OpenTelemetry::SDK::Metrics::State::MetricStream.new( + 'test_counter', + 'A test counter', + 'count', + :counter, + meter_provider, + instrumentation_scope, + aggregation + ) + + stream.update(10, {}) + snapshot = stream.collect(0, 1000) + + # Should have one metric data per view + _(snapshot.size).must_equal(2) + end + + it 'passes correct timestamps to metric data' do + metric_stream.update(10, {}) + start_time = 1000 + end_time = 2000 + + snapshot = metric_stream.collect(start_time, end_time) + metric_data = snapshot.first + + _(metric_data.start_time_unix_nano).must_equal(start_time) + _(metric_data.time_unix_nano).must_equal(end_time) + end + end + + describe '#aggregate_metric_data' do + it 'creates metric data with default aggregation' do + metric_stream.update(10, {}) + metric_stream.update(20, {}) + metric_data = metric_stream.aggregate_metric_data(0, 1000) + + _(metric_data).must_be_instance_of(OpenTelemetry::SDK::Metrics::State::MetricData) + _(metric_data.name).must_equal('test_counter') + _(metric_data.data_points.first.value).must_equal 30 + end + + it 'creates metric data with custom aggregation' do + # This test case is not relevant in this context. + # The instrument is already updated using the default aggregation, so the custom aggregation will not impact the collection process. + # The aggregation parameter in aggregate_metric_data(start_time, end_time, aggregation: nil) is intended + end + end + + describe '#find_registered_view' do + it 'only find matching views by name' do + view1 = OpenTelemetry::SDK::Metrics::View::RegisteredView.new( + 'test_counter', + aggregation: OpenTelemetry::SDK::Metrics::Aggregation::LastValue.new + ) + + view2 = OpenTelemetry::SDK::Metrics::View::RegisteredView.new( + 'other_counter', + aggregation: OpenTelemetry::SDK::Metrics::Aggregation::Drop.new + ) + + meter_provider.instance_variable_get(:@registered_views) << view1 + meter_provider.instance_variable_get(:@registered_views) << view2 + + stream = OpenTelemetry::SDK::Metrics::State::MetricStream.new( + 'test_counter', + 'A test counter', + 'count', + :counter, + meter_provider, + instrumentation_scope, + aggregation + ) + + registered_views = stream.instance_variable_get(:@registered_views) + + _(registered_views.size).must_equal 1 + _(registered_views[0].aggregation.class).must_equal ::OpenTelemetry::SDK::Metrics::Aggregation::LastValue + end + end + + describe '#to_s' do + it 'returns string representation without data points' do + str = metric_stream.to_s + _(str).must_be_instance_of(String) + _(str).must_be_empty # No data points yet + end + + it 'includes data points in string representation' do + metric_stream.update(10, { 'key1' => 'value1' }) + metric_stream.update(20, { 'key2' => 'value2' }) + str = metric_stream.to_s + + _(str).must_include('test_counter') + _(str).must_include('A test counter') + _(str).must_include('count') + _(str).must_include('key') + _(str).must_include('value') + _(str).must_include('key1') + _(str).must_include('key2') + _(str.lines.size).must_be :>=, 2 + end end end From 1fb317e4cb45c4285e1b813d7686e01431d36248 Mon Sep 17 00:00:00 2001 From: Pavlo Chypiga Date: Fri, 17 Oct 2025 23:11:41 +0200 Subject: [PATCH 08/13] fix: change zipkin annotations timestamp from string to int (#1944) Co-authored-by: Kayla Reopelle <87386821+kaylareopelle@users.noreply.github.com> --- .../zipkin/lib/opentelemetry/exporter/zipkin/transformer.rb | 4 ++-- .../test/opentelemetry/exporters/zipkin/transformer_test.rb | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/exporter/zipkin/lib/opentelemetry/exporter/zipkin/transformer.rb b/exporter/zipkin/lib/opentelemetry/exporter/zipkin/transformer.rb index bed33c0cf6..0a53199423 100644 --- a/exporter/zipkin/lib/opentelemetry/exporter/zipkin/transformer.rb +++ b/exporter/zipkin/lib/opentelemetry/exporter/zipkin/transformer.rb @@ -117,12 +117,12 @@ def add_annotations(zipkin_span, span_data) events = span_data.events.map do |event| if event.attributes.keys.length.zero? { - timestamp: (event.timestamp / 1_000).to_s, + timestamp: event.timestamp / 1_000, value: event.name } else { - timestamp: (event.timestamp / 1_000).to_s, + timestamp: event.timestamp / 1_000, value: { event.name => event.attributes.transform_values(&:to_s) }.to_json } end diff --git a/exporter/zipkin/test/opentelemetry/exporters/zipkin/transformer_test.rb b/exporter/zipkin/test/opentelemetry/exporters/zipkin/transformer_test.rb index d598775eaf..97535bfa4a 100644 --- a/exporter/zipkin/test/opentelemetry/exporters/zipkin/transformer_test.rb +++ b/exporter/zipkin/test/opentelemetry/exporters/zipkin/transformer_test.rb @@ -55,10 +55,10 @@ annotation_one = encoded_span[:annotations].first annotation_two = encoded_span[:annotations][1] - _(annotation_one[:timestamp]).must_equal((events[0].timestamp / 1_000).to_s) + _(annotation_one[:timestamp]).must_equal(events[0].timestamp / 1_000) _(annotation_one[:value]).must_equal({ 'event_with_attribs' => { 'ekey' => 'evalue' } }.to_json) - _(annotation_two[:timestamp]).must_equal((events[1].timestamp / 1_000).to_s) + _(annotation_two[:timestamp]).must_equal(events[1].timestamp / 1_000) _(annotation_two[:value]).must_equal('event_no_attrib') tags = encoded_span['tags'] @@ -115,7 +115,7 @@ annotation_one = encoded_span[:annotations].first - _(annotation_one[:timestamp]).must_equal((events[0].timestamp / 1000).to_s) + _(annotation_one[:timestamp]).must_equal(events[0].timestamp / 1000) _(annotation_one[:value]).must_equal({ 'event_with_attribs' => { 'ekey' => '["evalue"]' } }.to_json) tags = encoded_span['tags'] From 7cc09e8b426c7f65f8caca06ff5d2604407ee902 Mon Sep 17 00:00:00 2001 From: "otelbot-ruby[bot]" <231965978+otelbot-ruby[bot]@users.noreply.github.com> Date: Tue, 21 Oct 2025 13:02:21 -0700 Subject: [PATCH 09/13] release: Release 3 gems (#1949) * release: Release 3 gems * opentelemetry-exporter-otlp 0.31.1 (was 0.31.0) * opentelemetry-exporter-zipkin 0.24.1 (was 0.24.0) * opentelemetry-metrics-sdk 0.10.1 (was 0.10.0) * Update metrics_sdk/CHANGELOG.md --------- Co-authored-by: otelbot <197425009+otelbot@users.noreply.github.com> Co-authored-by: Kayla Reopelle <87386821+kaylareopelle@users.noreply.github.com> --- exporter/otlp/CHANGELOG.md | 4 ++++ exporter/otlp/lib/opentelemetry/exporter/otlp/version.rb | 2 +- exporter/zipkin/CHANGELOG.md | 4 ++++ exporter/zipkin/lib/opentelemetry/exporter/zipkin/version.rb | 2 +- metrics_sdk/CHANGELOG.md | 4 ++++ metrics_sdk/lib/opentelemetry/sdk/metrics/version.rb | 2 +- 6 files changed, 15 insertions(+), 3 deletions(-) diff --git a/exporter/otlp/CHANGELOG.md b/exporter/otlp/CHANGELOG.md index 9d3a0e8b8d..ee0936ad92 100644 --- a/exporter/otlp/CHANGELOG.md +++ b/exporter/otlp/CHANGELOG.md @@ -1,5 +1,9 @@ # Release History: opentelemetry-exporter-otlp +### v0.31.1 / 2025-10-21 + +* FIXED: Requires minimum SDK support for new parent_span_is_remote attribute + ### v0.31.0 / 2025-10-14 * ADDED: Add span flags support for isRemote property diff --git a/exporter/otlp/lib/opentelemetry/exporter/otlp/version.rb b/exporter/otlp/lib/opentelemetry/exporter/otlp/version.rb index 21647de0f3..5f1be1c665 100644 --- a/exporter/otlp/lib/opentelemetry/exporter/otlp/version.rb +++ b/exporter/otlp/lib/opentelemetry/exporter/otlp/version.rb @@ -8,7 +8,7 @@ module OpenTelemetry module Exporter module OTLP ## Current OpenTelemetry OTLP exporter version - VERSION = '0.31.0' + VERSION = '0.31.1' end end end diff --git a/exporter/zipkin/CHANGELOG.md b/exporter/zipkin/CHANGELOG.md index db8a7bcc8b..1a7a31288b 100644 --- a/exporter/zipkin/CHANGELOG.md +++ b/exporter/zipkin/CHANGELOG.md @@ -1,5 +1,9 @@ # Release History: opentelemetry-exporter-zipkin +### v0.24.1 / 2025-10-21 + +* FIXED: Change zipkin annotations timestamp from string to int + ### v0.24.0 / 2025-02-25 - ADDED: Support 3.1 Min Version diff --git a/exporter/zipkin/lib/opentelemetry/exporter/zipkin/version.rb b/exporter/zipkin/lib/opentelemetry/exporter/zipkin/version.rb index 3a0174a453..f0e87945c7 100644 --- a/exporter/zipkin/lib/opentelemetry/exporter/zipkin/version.rb +++ b/exporter/zipkin/lib/opentelemetry/exporter/zipkin/version.rb @@ -8,7 +8,7 @@ module OpenTelemetry module Exporter module Zipkin ## Current OpenTelemetry Zipkin exporter version - VERSION = '0.24.0' + VERSION = '0.24.1' end end end diff --git a/metrics_sdk/CHANGELOG.md b/metrics_sdk/CHANGELOG.md index d72fd443fc..0c2ab541b1 100644 --- a/metrics_sdk/CHANGELOG.md +++ b/metrics_sdk/CHANGELOG.md @@ -1,5 +1,9 @@ # Release History: opentelemetry-metrics-sdk +### v0.10.1 / 2025-10-21 + +* FIXED: Update callback timeout mechanism to use Thread + ### v0.10.0 / 2025-10-14 * ADDED: Use common method for returning timestamp in nanoseconds diff --git a/metrics_sdk/lib/opentelemetry/sdk/metrics/version.rb b/metrics_sdk/lib/opentelemetry/sdk/metrics/version.rb index de87fe4c70..28b2317785 100644 --- a/metrics_sdk/lib/opentelemetry/sdk/metrics/version.rb +++ b/metrics_sdk/lib/opentelemetry/sdk/metrics/version.rb @@ -8,7 +8,7 @@ module OpenTelemetry module SDK module Metrics # Current OpenTelemetry metrics sdk version - VERSION = '0.10.0' + VERSION = '0.10.1' end end end From 0898a0d82ecfb51c6b82719646a70dafe0b4da5f Mon Sep 17 00:00:00 2001 From: Wendy Smoak Date: Tue, 28 Oct 2025 17:25:55 -0400 Subject: [PATCH 10/13] feat: Add logging about export status to Metrics SDK (#1947) * Adds some debug log output for successfully exporting metrics, and additional error logging. Implementation is borrowed from the Batch Log Record Processor. Does not include a count. Eventually that can be handled with the `otel.sdk.exporter.metric_data_point.exported` internal metric. See https://opentelemetry.io/docs/specs/semconv/otel/sdk-metrics/ Fixes: #1888 * Add a test * remove rubocop disable * use endless syntax * remove unused RaisingExporter copied from BLRP test * don't set export interval or timeout * use let statements * Use public force_flush instead of internal export method * Remove skip for Windows platform * remove puts stmt from debugging --- .../metrics/export/periodic_metric_reader.rb | 13 +++- .../export/periodic_metric_reader_test.rb | 78 +++++++++++++++++++ 2 files changed, 90 insertions(+), 1 deletion(-) create mode 100644 metrics_sdk/test/opentelemetry/sdk/metrics/export/periodic_metric_reader_test.rb diff --git a/metrics_sdk/lib/opentelemetry/sdk/metrics/export/periodic_metric_reader.rb b/metrics_sdk/lib/opentelemetry/sdk/metrics/export/periodic_metric_reader.rb index cc779c4134..3f55d6fbd6 100644 --- a/metrics_sdk/lib/opentelemetry/sdk/metrics/export/periodic_metric_reader.rb +++ b/metrics_sdk/lib/opentelemetry/sdk/metrics/export/periodic_metric_reader.rb @@ -123,7 +123,18 @@ def start def export(timeout: nil) @export_mutex.synchronize do collected_metrics = collect - @exporter.export(collected_metrics, timeout: timeout || @export_timeout) unless collected_metrics.empty? + result_code = @exporter.export(collected_metrics, timeout: timeout || @export_timeout) unless collected_metrics.empty? + report_result(result_code) + result_code + end + end + + def report_result(result_code) + if result_code == Export::SUCCESS + OpenTelemetry.logger.debug 'Successfully exported metrics' + else + OpenTelemetry.handle_error(exception: ExportError.new('Unable to export metrics')) + OpenTelemetry.logger.error("Result code: #{result_code}") end end diff --git a/metrics_sdk/test/opentelemetry/sdk/metrics/export/periodic_metric_reader_test.rb b/metrics_sdk/test/opentelemetry/sdk/metrics/export/periodic_metric_reader_test.rb new file mode 100644 index 0000000000..e3df0abfa0 --- /dev/null +++ b/metrics_sdk/test/opentelemetry/sdk/metrics/export/periodic_metric_reader_test.rb @@ -0,0 +1,78 @@ +# frozen_string_literal: true + +# Copyright The OpenTelemetry Authors +# +# SPDX-License-Identifier: Apache-2.0 + +require 'test_helper' + +describe OpenTelemetry::SDK::Metrics::Export::PeriodicMetricReader do + PeriodicMetricReader = OpenTelemetry::SDK::Metrics::Export::PeriodicMetricReader + SUCCESS = OpenTelemetry::SDK::Metrics::Export::SUCCESS + FAILURE = OpenTelemetry::SDK::Metrics::Export::FAILURE + TIMEOUT = OpenTelemetry::SDK::Metrics::Export::TIMEOUT + + class TestExporter + def initialize(status_codes: nil) + @status_codes = status_codes || [] + @exported_metrics = [] + end + + attr_reader :exported_metrics + + def export(metrics, timeout: nil) + s = @status_codes.shift + if s.nil? || s == SUCCESS + @exported_metrics.concat(metrics) + SUCCESS + else + s + end + end + + def shutdown(timeout: nil) = SUCCESS + + def force_flush(timeout: nil) = SUCCESS + end + + describe 'exporter with failure' do + let(:exporter) { TestExporter.new(status_codes: [FAILURE]) } + let(:reader) { PeriodicMetricReader.new(exporter: exporter) } + + it 'logs export failure as error' do + mock_logger = Minitest::Mock.new + mock_logger.expect(:error, nil, [/Unable to export metrics/]) + mock_logger.expect(:error, nil, [/Result code: 1/]) + + # Stub collect to return a non-empty array so export is actually called + reader.stub(:collect, ['mock_metric']) do + OpenTelemetry.stub(:logger, mock_logger) do + reader.force_flush + end + end + + reader.shutdown + mock_logger.verify + end + end + + describe 'succesful exporter' do + let(:exporter) { TestExporter.new(status_codes: [SUCCESS]) } + let(:reader) { PeriodicMetricReader.new(exporter: exporter) } + + it 'logs successful export as debug' do + mock_logger = Minitest::Mock.new + mock_logger.expect(:debug, nil, ['Successfully exported metrics']) + + # Stub collect to return a non-empty array so export is actually called + reader.stub(:collect, ['mock_metric']) do + OpenTelemetry.stub(:logger, mock_logger) do + reader.force_flush + end + end + + reader.shutdown + mock_logger.verify + end + end +end From 113be4b2cf4095985d5000294904b2cc82a52cf5 Mon Sep 17 00:00:00 2001 From: "otelbot-ruby[bot]" <231965978+otelbot-ruby[bot]@users.noreply.github.com> Date: Tue, 28 Oct 2025 16:08:43 -0700 Subject: [PATCH 11/13] release: Release opentelemetry-metrics-sdk 0.11.0 (was 0.10.1) (#1950) Co-authored-by: otelbot <197425009+otelbot@users.noreply.github.com> --- metrics_sdk/CHANGELOG.md | 4 ++++ metrics_sdk/lib/opentelemetry/sdk/metrics/version.rb | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/metrics_sdk/CHANGELOG.md b/metrics_sdk/CHANGELOG.md index 0c2ab541b1..15dbd82035 100644 --- a/metrics_sdk/CHANGELOG.md +++ b/metrics_sdk/CHANGELOG.md @@ -1,5 +1,9 @@ # Release History: opentelemetry-metrics-sdk +### v0.11.0 / 2025-10-28 + +* ADDED: Add logging about export status to Metrics SDK + ### v0.10.1 / 2025-10-21 * FIXED: Update callback timeout mechanism to use Thread diff --git a/metrics_sdk/lib/opentelemetry/sdk/metrics/version.rb b/metrics_sdk/lib/opentelemetry/sdk/metrics/version.rb index 28b2317785..4f4e2257aa 100644 --- a/metrics_sdk/lib/opentelemetry/sdk/metrics/version.rb +++ b/metrics_sdk/lib/opentelemetry/sdk/metrics/version.rb @@ -8,7 +8,7 @@ module OpenTelemetry module SDK module Metrics # Current OpenTelemetry metrics sdk version - VERSION = '0.10.1' + VERSION = '0.11.0' end end end From e1b4d17fee258d2e35ce8a801b980dfcc2b792f0 Mon Sep 17 00:00:00 2001 From: Anders Chen Date: Sun, 30 Nov 2025 10:49:33 +0700 Subject: [PATCH 12/13] Add IPv4/IPv6 compatibility tests on otlp-http/otlp-logs/otlp-metrics exporters --- .../exporter/otlp/http/trace_exporter_test.rb | 142 ++++++++++++++++++ .../exporter/otlp/logs_exporter_test.rb | 142 ++++++++++++++++++ .../otlp/metrics/metrics_exporter_test.rb | 142 ++++++++++++++++++ 3 files changed, 426 insertions(+) diff --git a/exporter/otlp-http/test/opentelemetry/exporter/otlp/http/trace_exporter_test.rb b/exporter/otlp-http/test/opentelemetry/exporter/otlp/http/trace_exporter_test.rb index 0281a6e975..68972414d2 100644 --- a/exporter/otlp-http/test/opentelemetry/exporter/otlp/http/trace_exporter_test.rb +++ b/exporter/otlp-http/test/opentelemetry/exporter/otlp/http/trace_exporter_test.rb @@ -271,6 +271,148 @@ end end + describe 'IPv4/IPv6 compatibility' do + it 'handles IPv6 loopback address with brackets' do + exp = OpenTelemetry::Exporter::OTLP::HTTP::TraceExporter.new(endpoint: 'http://[::1]:4318/v1/traces') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '::1' + _(http.port).must_equal 4318 + _(exp.instance_variable_get(:@path)).must_equal '/v1/traces' + end + + it 'handles IPv6 full address with brackets' do + exp = OpenTelemetry::Exporter::OTLP::HTTP::TraceExporter.new(endpoint: 'http://[2001:db8::1]:4318/v1/traces') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '2001:db8::1' + _(http.port).must_equal 4318 + end + + it 'handles IPv6 address with https' do + exp = OpenTelemetry::Exporter::OTLP::HTTP::TraceExporter.new(endpoint: 'https://[::1]:4318/v1/traces') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '::1' + _(http.port).must_equal 4318 + _(http.use_ssl?).must_equal true + end + + it 'handles IPv6 address with custom path' do + exp = OpenTelemetry::Exporter::OTLP::HTTP::TraceExporter.new(endpoint: 'http://[::1]:8080/custom/path') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '::1' + _(http.port).must_equal 8080 + _(exp.instance_variable_get(:@path)).must_equal '/custom/path' + end + + it 'handles IPv4 loopback address' do + exp = OpenTelemetry::Exporter::OTLP::HTTP::TraceExporter.new(endpoint: 'http://127.0.0.1:4318/v1/traces') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '127.0.0.1' + _(http.port).must_equal 4318 + _(exp.instance_variable_get(:@path)).must_equal '/v1/traces' + end + + it 'handles IPv4 address with custom port' do + exp = OpenTelemetry::Exporter::OTLP::HTTP::TraceExporter.new(endpoint: 'http://192.168.1.100:8080/v1/traces') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '192.168.1.100' + _(http.port).must_equal 8080 + end + + it 'handles IPv4 address with https' do + exp = OpenTelemetry::Exporter::OTLP::HTTP::TraceExporter.new(endpoint: 'https://10.0.0.1:4318/v1/traces') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '10.0.0.1' + _(http.port).must_equal 4318 + _(http.use_ssl?).must_equal true + end + + it 'handles IPv4 address with custom path' do + exp = OpenTelemetry::Exporter::OTLP::HTTP::TraceExporter.new(endpoint: 'http://127.0.0.1:9090/custom/path') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '127.0.0.1' + _(http.port).must_equal 9090 + _(exp.instance_variable_get(:@path)).must_equal '/custom/path' + end + + it 'handles IPv4 address from environment variable' do + exp = OpenTelemetry::TestHelpers.with_env('OTEL_EXPORTER_OTLP_ENDPOINT' => 'http://192.168.1.1:4318') do + OpenTelemetry::Exporter::OTLP::HTTP::TraceExporter.new + end + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '192.168.1.1' + _(http.port).must_equal 4318 + _(exp.instance_variable_get(:@path)).must_equal '/v1/traces' + end + + it 'handles hostnames' do + exp = OpenTelemetry::Exporter::OTLP::HTTP::TraceExporter.new(endpoint: 'http://localhost:4318/v1/traces') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal 'localhost' + _(http.port).must_equal 4318 + end + + it 'handles fully qualified domain names' do + exp = OpenTelemetry::Exporter::OTLP::HTTP::TraceExporter.new(endpoint: 'http://otel.example.com:4318/v1/traces') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal 'otel.example.com' + _(http.port).must_equal 4318 + end + + it 'handles hostnames with https' do + exp = OpenTelemetry::Exporter::OTLP::HTTP::TraceExporter.new(endpoint: 'https://otel-collector.prod.example.com:443/v1/traces') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal 'otel-collector.prod.example.com' + _(http.port).must_equal 443 + _(http.use_ssl?).must_equal true + end + + it 'handles IPv6 address from environment variable' do + exp = OpenTelemetry::TestHelpers.with_env('OTEL_EXPORTER_OTLP_ENDPOINT' => 'http://[::1]:4318') do + OpenTelemetry::Exporter::OTLP::HTTP::TraceExporter.new + end + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '::1' + _(http.port).must_equal 4318 + _(exp.instance_variable_get(:@path)).must_equal '/v1/traces' + end + + it 'exports span data with IPv6 address' do + stub_request(:post, 'http://[::1]:4318/v1/traces').to_return(status: 200) + exp = OpenTelemetry::Exporter::OTLP::HTTP::TraceExporter.new(endpoint: 'http://[::1]:4318/v1/traces') + span_data = OpenTelemetry::TestHelpers.create_span_data + result = exp.export([span_data]) + _(result).must_equal(success) + end + + it 'exports span data with IPv4 address' do + stub_request(:post, 'http://127.0.0.1:4318/v1/traces').to_return(status: 200) + exp = OpenTelemetry::Exporter::OTLP::HTTP::TraceExporter.new(endpoint: 'http://127.0.0.1:4318/v1/traces') + span_data = OpenTelemetry::TestHelpers.create_span_data + result = exp.export([span_data]) + _(result).must_equal(success) + end + + it 'exports span data with IPv6 address via full URL' do + stub_request(:post, 'http://[2001:db8::8a2e:370:7334]:4318/v1/traces').to_return(status: 200) + exp = OpenTelemetry::Exporter::OTLP::HTTP::TraceExporter.new(endpoint: 'http://[2001:db8::8a2e:370:7334]:4318/v1/traces') + span_data = OpenTelemetry::TestHelpers.create_span_data + result = exp.export([span_data]) + _(result).must_equal(success) + end + + it 'handles connection errors with IPv6 address gracefully' do + stub_request(:post, 'http://[::1]:4318/v1/traces').to_raise(SocketError.new('getaddrinfo: nodename nor servname provided, or not known')) + exp = OpenTelemetry::Exporter::OTLP::HTTP::TraceExporter.new(endpoint: 'http://[::1]:4318/v1/traces') + span_data = OpenTelemetry::TestHelpers.create_span_data + + # Mock backoff to prevent retries + exp.stub(:backoff?, ->(**_) { false }) do + result = exp.export([span_data]) + _(result).must_equal(export_failure) + end + end + end + describe '#export' do let(:exporter) { OpenTelemetry::Exporter::OTLP::HTTP::TraceExporter.new } diff --git a/exporter/otlp-logs/test/opentelemetry/exporter/otlp/logs_exporter_test.rb b/exporter/otlp-logs/test/opentelemetry/exporter/otlp/logs_exporter_test.rb index eed6280d04..59b4d36ca5 100644 --- a/exporter/otlp-logs/test/opentelemetry/exporter/otlp/logs_exporter_test.rb +++ b/exporter/otlp-logs/test/opentelemetry/exporter/otlp/logs_exporter_test.rb @@ -337,6 +337,148 @@ end end + describe 'IPv4/IPv6 compatibility' do + it 'handles IPv6 loopback address with brackets' do + exp = OpenTelemetry::Exporter::OTLP::Logs::LogsExporter.new(endpoint: 'http://[::1]:4318/v1/logs') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '::1' + _(http.port).must_equal 4318 + _(exp.instance_variable_get(:@path)).must_equal '/v1/logs' + end + + it 'handles IPv6 full address with brackets' do + exp = OpenTelemetry::Exporter::OTLP::Logs::LogsExporter.new(endpoint: 'http://[2001:db8::1]:4318/v1/logs') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '2001:db8::1' + _(http.port).must_equal 4318 + end + + it 'handles IPv6 address with https' do + exp = OpenTelemetry::Exporter::OTLP::Logs::LogsExporter.new(endpoint: 'https://[::1]:4318/v1/logs') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '::1' + _(http.port).must_equal 4318 + _(http.use_ssl?).must_equal true + end + + it 'handles IPv6 address with custom path' do + exp = OpenTelemetry::Exporter::OTLP::Logs::LogsExporter.new(endpoint: 'http://[::1]:8080/custom/path') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '::1' + _(http.port).must_equal 8080 + _(exp.instance_variable_get(:@path)).must_equal '/custom/path' + end + + it 'handles IPv4 loopback address' do + exp = OpenTelemetry::Exporter::OTLP::Logs::LogsExporter.new(endpoint: 'http://127.0.0.1:4318/v1/logs') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '127.0.0.1' + _(http.port).must_equal 4318 + _(exp.instance_variable_get(:@path)).must_equal '/v1/logs' + end + + it 'handles IPv4 address with custom port' do + exp = OpenTelemetry::Exporter::OTLP::Logs::LogsExporter.new(endpoint: 'http://192.168.1.100:8080/v1/logs') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '192.168.1.100' + _(http.port).must_equal 8080 + end + + it 'handles IPv4 address with https' do + exp = OpenTelemetry::Exporter::OTLP::Logs::LogsExporter.new(endpoint: 'https://10.0.0.1:4318/v1/logs') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '10.0.0.1' + _(http.port).must_equal 4318 + _(http.use_ssl?).must_equal true + end + + it 'handles IPv4 address with custom path' do + exp = OpenTelemetry::Exporter::OTLP::Logs::LogsExporter.new(endpoint: 'http://127.0.0.1:9090/custom/path') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '127.0.0.1' + _(http.port).must_equal 9090 + _(exp.instance_variable_get(:@path)).must_equal '/custom/path' + end + + it 'handles IPv4 address from environment variable' do + exp = OpenTelemetry::TestHelpers.with_env('OTEL_EXPORTER_OTLP_ENDPOINT' => 'http://192.168.1.1:4318') do + OpenTelemetry::Exporter::OTLP::Logs::LogsExporter.new + end + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '192.168.1.1' + _(http.port).must_equal 4318 + _(exp.instance_variable_get(:@path)).must_equal '/v1/logs' + end + + it 'handles hostnames' do + exp = OpenTelemetry::Exporter::OTLP::Logs::LogsExporter.new(endpoint: 'http://localhost:4318/v1/logs') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal 'localhost' + _(http.port).must_equal 4318 + end + + it 'handles fully qualified domain names' do + exp = OpenTelemetry::Exporter::OTLP::Logs::LogsExporter.new(endpoint: 'http://otel.example.com:4318/v1/logs') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal 'otel.example.com' + _(http.port).must_equal 4318 + end + + it 'handles hostnames with https' do + exp = OpenTelemetry::Exporter::OTLP::Logs::LogsExporter.new(endpoint: 'https://otel-collector.prod.example.com:443/v1/logs') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal 'otel-collector.prod.example.com' + _(http.port).must_equal 443 + _(http.use_ssl?).must_equal true + end + + it 'handles IPv6 address from environment variable' do + exp = OpenTelemetry::TestHelpers.with_env('OTEL_EXPORTER_OTLP_ENDPOINT' => 'http://[::1]:4318') do + OpenTelemetry::Exporter::OTLP::Logs::LogsExporter.new + end + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '::1' + _(http.port).must_equal 4318 + _(exp.instance_variable_get(:@path)).must_equal '/v1/logs' + end + + it 'exports log record data with IPv6 address' do + stub_request(:post, 'http://[::1]:4318/v1/logs').to_return(status: 200) + exp = OpenTelemetry::Exporter::OTLP::Logs::LogsExporter.new(endpoint: 'http://[::1]:4318/v1/logs') + log_record_data = OpenTelemetry::TestHelpers.create_log_record_data + result = exp.export([log_record_data]) + _(result).must_equal(SUCCESS) + end + + it 'exports log record data with IPv4 address' do + stub_request(:post, 'http://127.0.0.1:4318/v1/logs').to_return(status: 200) + exp = OpenTelemetry::Exporter::OTLP::Logs::LogsExporter.new(endpoint: 'http://127.0.0.1:4318/v1/logs') + log_record_data = OpenTelemetry::TestHelpers.create_log_record_data + result = exp.export([log_record_data]) + _(result).must_equal(SUCCESS) + end + + it 'exports log record data with IPv6 address via full URL' do + stub_request(:post, 'http://[2001:db8::8a2e:370:7334]:4318/v1/logs').to_return(status: 200) + exp = OpenTelemetry::Exporter::OTLP::Logs::LogsExporter.new(endpoint: 'http://[2001:db8::8a2e:370:7334]:4318/v1/logs') + log_record_data = OpenTelemetry::TestHelpers.create_log_record_data + result = exp.export([log_record_data]) + _(result).must_equal(SUCCESS) + end + + it 'handles connection errors with IPv6 address gracefully' do + stub_request(:post, 'http://[::1]:4318/v1/logs').to_raise(SocketError.new('getaddrinfo: nodename nor servname provided, or not known')) + exp = OpenTelemetry::Exporter::OTLP::Logs::LogsExporter.new(endpoint: 'http://[::1]:4318/v1/logs') + log_record_data = OpenTelemetry::TestHelpers.create_log_record_data + + # Mock backoff to prevent retries + exp.stub(:backoff?, ->(**_) { false }) do + result = exp.export([log_record_data]) + _(result).must_equal(FAILURE) + end + end + end + describe '#export' do let(:exporter) { OpenTelemetry::Exporter::OTLP::Logs::LogsExporter.new } # TODO: replace with a before block to set a global logger provider through OpenTelemetry.logger_provider when the API code is merged diff --git a/exporter/otlp-metrics/test/opentelemetry/exporter/otlp/metrics/metrics_exporter_test.rb b/exporter/otlp-metrics/test/opentelemetry/exporter/otlp/metrics/metrics_exporter_test.rb index 24f1eed063..f32ae8b60b 100644 --- a/exporter/otlp-metrics/test/opentelemetry/exporter/otlp/metrics/metrics_exporter_test.rb +++ b/exporter/otlp-metrics/test/opentelemetry/exporter/otlp/metrics/metrics_exporter_test.rb @@ -334,6 +334,148 @@ end end + describe 'IPv4/IPv6 compatibility' do + it 'handles IPv6 loopback address with brackets' do + exp = OpenTelemetry::Exporter::OTLP::Metrics::MetricsExporter.new(endpoint: 'http://[::1]:4318/v1/metrics') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '::1' + _(http.port).must_equal 4318 + _(exp.instance_variable_get(:@path)).must_equal '/v1/metrics' + end + + it 'handles IPv6 full address with brackets' do + exp = OpenTelemetry::Exporter::OTLP::Metrics::MetricsExporter.new(endpoint: 'http://[2001:db8::1]:4318/v1/metrics') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '2001:db8::1' + _(http.port).must_equal 4318 + end + + it 'handles IPv6 address with https' do + exp = OpenTelemetry::Exporter::OTLP::Metrics::MetricsExporter.new(endpoint: 'https://[::1]:4318/v1/metrics') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '::1' + _(http.port).must_equal 4318 + _(http.use_ssl?).must_equal true + end + + it 'handles IPv6 address with custom path' do + exp = OpenTelemetry::Exporter::OTLP::Metrics::MetricsExporter.new(endpoint: 'http://[::1]:8080/custom/path') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '::1' + _(http.port).must_equal 8080 + _(exp.instance_variable_get(:@path)).must_equal '/custom/path' + end + + it 'handles IPv4 loopback address' do + exp = OpenTelemetry::Exporter::OTLP::Metrics::MetricsExporter.new(endpoint: 'http://127.0.0.1:4318/v1/metrics') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '127.0.0.1' + _(http.port).must_equal 4318 + _(exp.instance_variable_get(:@path)).must_equal '/v1/metrics' + end + + it 'handles IPv4 address with custom port' do + exp = OpenTelemetry::Exporter::OTLP::Metrics::MetricsExporter.new(endpoint: 'http://192.168.1.100:8080/v1/metrics') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '192.168.1.100' + _(http.port).must_equal 8080 + end + + it 'handles IPv4 address with https' do + exp = OpenTelemetry::Exporter::OTLP::Metrics::MetricsExporter.new(endpoint: 'https://10.0.0.1:4318/v1/metrics') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '10.0.0.1' + _(http.port).must_equal 4318 + _(http.use_ssl?).must_equal true + end + + it 'handles IPv4 address with custom path' do + exp = OpenTelemetry::Exporter::OTLP::Metrics::MetricsExporter.new(endpoint: 'http://127.0.0.1:9090/custom/path') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '127.0.0.1' + _(http.port).must_equal 9090 + _(exp.instance_variable_get(:@path)).must_equal '/custom/path' + end + + it 'handles IPv4 address from environment variable' do + exp = OpenTelemetry::TestHelpers.with_env('OTEL_EXPORTER_OTLP_ENDPOINT' => 'http://192.168.1.1:4318') do + OpenTelemetry::Exporter::OTLP::Metrics::MetricsExporter.new + end + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '192.168.1.1' + _(http.port).must_equal 4318 + _(exp.instance_variable_get(:@path)).must_equal '/v1/metrics' + end + + it 'handles hostnames' do + exp = OpenTelemetry::Exporter::OTLP::Metrics::MetricsExporter.new(endpoint: 'http://localhost:4318/v1/metrics') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal 'localhost' + _(http.port).must_equal 4318 + end + + it 'handles fully qualified domain names' do + exp = OpenTelemetry::Exporter::OTLP::Metrics::MetricsExporter.new(endpoint: 'http://otel.example.com:4318/v1/metrics') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal 'otel.example.com' + _(http.port).must_equal 4318 + end + + it 'handles hostnames with https' do + exp = OpenTelemetry::Exporter::OTLP::Metrics::MetricsExporter.new(endpoint: 'https://otel-collector.prod.example.com:443/v1/metrics') + http = exp.instance_variable_get(:@http) + _(http.address).must_equal 'otel-collector.prod.example.com' + _(http.port).must_equal 443 + _(http.use_ssl?).must_equal true + end + + it 'handles IPv6 address from environment variable' do + exp = OpenTelemetry::TestHelpers.with_env('OTEL_EXPORTER_OTLP_ENDPOINT' => 'http://[::1]:4318') do + OpenTelemetry::Exporter::OTLP::Metrics::MetricsExporter.new + end + http = exp.instance_variable_get(:@http) + _(http.address).must_equal '::1' + _(http.port).must_equal 4318 + _(exp.instance_variable_get(:@path)).must_equal '/v1/metrics' + end + + it 'exports metrics data with IPv6 address' do + stub_request(:post, 'http://[::1]:4318/v1/metrics').to_return(status: 200) + exp = OpenTelemetry::Exporter::OTLP::Metrics::MetricsExporter.new(endpoint: 'http://[::1]:4318/v1/metrics') + metrics_data = create_metrics_data + result = exp.export([metrics_data]) + _(result).must_equal(METRICS_SUCCESS) + end + + it 'exports metrics data with IPv4 address' do + stub_request(:post, 'http://127.0.0.1:4318/v1/metrics').to_return(status: 200) + exp = OpenTelemetry::Exporter::OTLP::Metrics::MetricsExporter.new(endpoint: 'http://127.0.0.1:4318/v1/metrics') + metrics_data = create_metrics_data + result = exp.export([metrics_data]) + _(result).must_equal(METRICS_SUCCESS) + end + + it 'exports metrics data with IPv6 address via full URL' do + stub_request(:post, 'http://[2001:db8::8a2e:370:7334]:4318/v1/metrics').to_return(status: 200) + exp = OpenTelemetry::Exporter::OTLP::Metrics::MetricsExporter.new(endpoint: 'http://[2001:db8::8a2e:370:7334]:4318/v1/metrics') + metrics_data = create_metrics_data + result = exp.export([metrics_data]) + _(result).must_equal(METRICS_SUCCESS) + end + + it 'handles connection errors with IPv6 address gracefully' do + stub_request(:post, 'http://[::1]:4318/v1/metrics').to_raise(SocketError.new('getaddrinfo: nodename nor servname provided, or not known')) + exp = OpenTelemetry::Exporter::OTLP::Metrics::MetricsExporter.new(endpoint: 'http://[::1]:4318/v1/metrics') + metrics_data = create_metrics_data + + # Mock backoff to prevent retries + exp.stub(:backoff?, ->(**_) { false }) do + result = exp.export([metrics_data]) + _(result).must_equal(METRICS_FAILURE) + end + end + end + describe '#export' do let(:exporter) { OpenTelemetry::Exporter::OTLP::Metrics::MetricsExporter.new } let(:meter_provider) { OpenTelemetry::SDK::Metrics::MeterProvider.new(resource: OpenTelemetry::SDK::Resources::Resource.telemetry_sdk) } From ef12dace13aac9cb66f33bc9c844c53e22287cb1 Mon Sep 17 00:00:00 2001 From: Anders Chen Date: Thu, 8 Jan 2026 00:40:07 +0700 Subject: [PATCH 13/13] Remove extraneous export span tests / focus on validation only --- .../exporter/otlp/http/trace_exporter_test.rb | 36 ------------------- .../exporter/otlp/logs_exporter_test.rb | 36 ------------------- .../otlp/metrics/metrics_exporter_test.rb | 36 ------------------- .../exporter/otlp/exporter_test.rb | 36 ------------------- 4 files changed, 144 deletions(-) diff --git a/exporter/otlp-http/test/opentelemetry/exporter/otlp/http/trace_exporter_test.rb b/exporter/otlp-http/test/opentelemetry/exporter/otlp/http/trace_exporter_test.rb index 68972414d2..e5d3ef2160 100644 --- a/exporter/otlp-http/test/opentelemetry/exporter/otlp/http/trace_exporter_test.rb +++ b/exporter/otlp-http/test/opentelemetry/exporter/otlp/http/trace_exporter_test.rb @@ -375,42 +375,6 @@ _(http.port).must_equal 4318 _(exp.instance_variable_get(:@path)).must_equal '/v1/traces' end - - it 'exports span data with IPv6 address' do - stub_request(:post, 'http://[::1]:4318/v1/traces').to_return(status: 200) - exp = OpenTelemetry::Exporter::OTLP::HTTP::TraceExporter.new(endpoint: 'http://[::1]:4318/v1/traces') - span_data = OpenTelemetry::TestHelpers.create_span_data - result = exp.export([span_data]) - _(result).must_equal(success) - end - - it 'exports span data with IPv4 address' do - stub_request(:post, 'http://127.0.0.1:4318/v1/traces').to_return(status: 200) - exp = OpenTelemetry::Exporter::OTLP::HTTP::TraceExporter.new(endpoint: 'http://127.0.0.1:4318/v1/traces') - span_data = OpenTelemetry::TestHelpers.create_span_data - result = exp.export([span_data]) - _(result).must_equal(success) - end - - it 'exports span data with IPv6 address via full URL' do - stub_request(:post, 'http://[2001:db8::8a2e:370:7334]:4318/v1/traces').to_return(status: 200) - exp = OpenTelemetry::Exporter::OTLP::HTTP::TraceExporter.new(endpoint: 'http://[2001:db8::8a2e:370:7334]:4318/v1/traces') - span_data = OpenTelemetry::TestHelpers.create_span_data - result = exp.export([span_data]) - _(result).must_equal(success) - end - - it 'handles connection errors with IPv6 address gracefully' do - stub_request(:post, 'http://[::1]:4318/v1/traces').to_raise(SocketError.new('getaddrinfo: nodename nor servname provided, or not known')) - exp = OpenTelemetry::Exporter::OTLP::HTTP::TraceExporter.new(endpoint: 'http://[::1]:4318/v1/traces') - span_data = OpenTelemetry::TestHelpers.create_span_data - - # Mock backoff to prevent retries - exp.stub(:backoff?, ->(**_) { false }) do - result = exp.export([span_data]) - _(result).must_equal(export_failure) - end - end end describe '#export' do diff --git a/exporter/otlp-logs/test/opentelemetry/exporter/otlp/logs_exporter_test.rb b/exporter/otlp-logs/test/opentelemetry/exporter/otlp/logs_exporter_test.rb index 59b4d36ca5..d4dccd34ea 100644 --- a/exporter/otlp-logs/test/opentelemetry/exporter/otlp/logs_exporter_test.rb +++ b/exporter/otlp-logs/test/opentelemetry/exporter/otlp/logs_exporter_test.rb @@ -441,42 +441,6 @@ _(http.port).must_equal 4318 _(exp.instance_variable_get(:@path)).must_equal '/v1/logs' end - - it 'exports log record data with IPv6 address' do - stub_request(:post, 'http://[::1]:4318/v1/logs').to_return(status: 200) - exp = OpenTelemetry::Exporter::OTLP::Logs::LogsExporter.new(endpoint: 'http://[::1]:4318/v1/logs') - log_record_data = OpenTelemetry::TestHelpers.create_log_record_data - result = exp.export([log_record_data]) - _(result).must_equal(SUCCESS) - end - - it 'exports log record data with IPv4 address' do - stub_request(:post, 'http://127.0.0.1:4318/v1/logs').to_return(status: 200) - exp = OpenTelemetry::Exporter::OTLP::Logs::LogsExporter.new(endpoint: 'http://127.0.0.1:4318/v1/logs') - log_record_data = OpenTelemetry::TestHelpers.create_log_record_data - result = exp.export([log_record_data]) - _(result).must_equal(SUCCESS) - end - - it 'exports log record data with IPv6 address via full URL' do - stub_request(:post, 'http://[2001:db8::8a2e:370:7334]:4318/v1/logs').to_return(status: 200) - exp = OpenTelemetry::Exporter::OTLP::Logs::LogsExporter.new(endpoint: 'http://[2001:db8::8a2e:370:7334]:4318/v1/logs') - log_record_data = OpenTelemetry::TestHelpers.create_log_record_data - result = exp.export([log_record_data]) - _(result).must_equal(SUCCESS) - end - - it 'handles connection errors with IPv6 address gracefully' do - stub_request(:post, 'http://[::1]:4318/v1/logs').to_raise(SocketError.new('getaddrinfo: nodename nor servname provided, or not known')) - exp = OpenTelemetry::Exporter::OTLP::Logs::LogsExporter.new(endpoint: 'http://[::1]:4318/v1/logs') - log_record_data = OpenTelemetry::TestHelpers.create_log_record_data - - # Mock backoff to prevent retries - exp.stub(:backoff?, ->(**_) { false }) do - result = exp.export([log_record_data]) - _(result).must_equal(FAILURE) - end - end end describe '#export' do diff --git a/exporter/otlp-metrics/test/opentelemetry/exporter/otlp/metrics/metrics_exporter_test.rb b/exporter/otlp-metrics/test/opentelemetry/exporter/otlp/metrics/metrics_exporter_test.rb index f32ae8b60b..7debfd74c3 100644 --- a/exporter/otlp-metrics/test/opentelemetry/exporter/otlp/metrics/metrics_exporter_test.rb +++ b/exporter/otlp-metrics/test/opentelemetry/exporter/otlp/metrics/metrics_exporter_test.rb @@ -438,42 +438,6 @@ _(http.port).must_equal 4318 _(exp.instance_variable_get(:@path)).must_equal '/v1/metrics' end - - it 'exports metrics data with IPv6 address' do - stub_request(:post, 'http://[::1]:4318/v1/metrics').to_return(status: 200) - exp = OpenTelemetry::Exporter::OTLP::Metrics::MetricsExporter.new(endpoint: 'http://[::1]:4318/v1/metrics') - metrics_data = create_metrics_data - result = exp.export([metrics_data]) - _(result).must_equal(METRICS_SUCCESS) - end - - it 'exports metrics data with IPv4 address' do - stub_request(:post, 'http://127.0.0.1:4318/v1/metrics').to_return(status: 200) - exp = OpenTelemetry::Exporter::OTLP::Metrics::MetricsExporter.new(endpoint: 'http://127.0.0.1:4318/v1/metrics') - metrics_data = create_metrics_data - result = exp.export([metrics_data]) - _(result).must_equal(METRICS_SUCCESS) - end - - it 'exports metrics data with IPv6 address via full URL' do - stub_request(:post, 'http://[2001:db8::8a2e:370:7334]:4318/v1/metrics').to_return(status: 200) - exp = OpenTelemetry::Exporter::OTLP::Metrics::MetricsExporter.new(endpoint: 'http://[2001:db8::8a2e:370:7334]:4318/v1/metrics') - metrics_data = create_metrics_data - result = exp.export([metrics_data]) - _(result).must_equal(METRICS_SUCCESS) - end - - it 'handles connection errors with IPv6 address gracefully' do - stub_request(:post, 'http://[::1]:4318/v1/metrics').to_raise(SocketError.new('getaddrinfo: nodename nor servname provided, or not known')) - exp = OpenTelemetry::Exporter::OTLP::Metrics::MetricsExporter.new(endpoint: 'http://[::1]:4318/v1/metrics') - metrics_data = create_metrics_data - - # Mock backoff to prevent retries - exp.stub(:backoff?, ->(**_) { false }) do - result = exp.export([metrics_data]) - _(result).must_equal(METRICS_FAILURE) - end - end end describe '#export' do diff --git a/exporter/otlp/test/opentelemetry/exporter/otlp/exporter_test.rb b/exporter/otlp/test/opentelemetry/exporter/otlp/exporter_test.rb index 5e7dfb2ca2..e5a1dc5e0a 100644 --- a/exporter/otlp/test/opentelemetry/exporter/otlp/exporter_test.rb +++ b/exporter/otlp/test/opentelemetry/exporter/otlp/exporter_test.rb @@ -461,42 +461,6 @@ _(http.port).must_equal 4318 _(exp.instance_variable_get(:@path)).must_equal '/v1/traces' end - - it 'exports span data with IPv6 address' do - stub_request(:post, 'http://[::1]:4318/v1/traces').to_return(status: 200) - exp = OpenTelemetry::Exporter::OTLP::Exporter.new(endpoint: 'http://[::1]:4318/v1/traces') - span_data = OpenTelemetry::TestHelpers.create_span_data - result = exp.export([span_data]) - _(result).must_equal(SUCCESS) - end - - it 'exports span data with IPv4 address' do - stub_request(:post, 'http://127.0.0.1:4318/v1/traces').to_return(status: 200) - exp = OpenTelemetry::Exporter::OTLP::Exporter.new(endpoint: 'http://127.0.0.1:4318/v1/traces') - span_data = OpenTelemetry::TestHelpers.create_span_data - result = exp.export([span_data]) - _(result).must_equal(SUCCESS) - end - - it 'exports span data with IPv6 address via full URL' do - stub_request(:post, 'http://[2001:db8::8a2e:370:7334]:4318/v1/traces').to_return(status: 200) - exp = OpenTelemetry::Exporter::OTLP::Exporter.new(endpoint: 'http://[2001:db8::8a2e:370:7334]:4318/v1/traces') - span_data = OpenTelemetry::TestHelpers.create_span_data - result = exp.export([span_data]) - _(result).must_equal(SUCCESS) - end - - it 'handles connection errors with IPv6 address gracefully' do - stub_request(:post, 'http://[::1]:4318/v1/traces').to_raise(SocketError.new('getaddrinfo: nodename nor servname provided, or not known')) - exp = OpenTelemetry::Exporter::OTLP::Exporter.new(endpoint: 'http://[::1]:4318/v1/traces') - span_data = OpenTelemetry::TestHelpers.create_span_data - - # Mock backoff to prevent retries - exp.stub(:backoff?, ->(**_) { false }) do - result = exp.export([span_data]) - _(result).must_equal(FAILURE) - end - end end describe 'ssl_verify_mode:' do