diff --git a/.github/workflows/lint_0.yml b/.github/workflows/lint_0.yml index 77320068972..0c3601240b5 100644 --- a/.github/workflows/lint_0.yml +++ b/.github/workflows/lint_0.yml @@ -47,8 +47,8 @@ jobs: - name: Run tests run: tox -e lint-opentelemetry-api - lint-opentelemetry-proto-protobuf5: - name: opentelemetry-proto-protobuf5 + lint-opentelemetry-proto-protobuf6: + name: opentelemetry-proto-protobuf6 runs-on: ubuntu-latest timeout-minutes: 30 steps: @@ -64,7 +64,7 @@ jobs: run: pip install tox - name: Run tests - run: tox -e lint-opentelemetry-proto-protobuf5 + run: tox -e lint-opentelemetry-proto-protobuf6 lint-opentelemetry-sdk: name: opentelemetry-sdk diff --git a/.github/workflows/test_0.yml b/.github/workflows/test_0.yml index 6136b928811..12f3f976530 100644 --- a/.github/workflows/test_0.yml +++ b/.github/workflows/test_0.yml @@ -142,8 +142,8 @@ jobs: - name: Run tests run: tox -e pypy3-test-opentelemetry-api -- -ra - py39-test-opentelemetry-proto-protobuf5_ubuntu-latest: - name: opentelemetry-proto-protobuf5 3.9 Ubuntu + py39-test-opentelemetry-proto-protobuf6_ubuntu-latest: + name: opentelemetry-proto-protobuf6 3.9 Ubuntu runs-on: ubuntu-latest timeout-minutes: 30 steps: @@ -159,10 +159,10 @@ jobs: run: pip install tox - name: Run tests - run: tox -e py39-test-opentelemetry-proto-protobuf5 -- -ra + run: tox -e py39-test-opentelemetry-proto-protobuf6 -- -ra - py310-test-opentelemetry-proto-protobuf5_ubuntu-latest: - name: opentelemetry-proto-protobuf5 3.10 Ubuntu + py310-test-opentelemetry-proto-protobuf6_ubuntu-latest: + name: opentelemetry-proto-protobuf6 3.10 Ubuntu runs-on: ubuntu-latest timeout-minutes: 30 steps: @@ -178,10 +178,10 @@ jobs: run: pip install tox - name: Run tests - run: tox -e py310-test-opentelemetry-proto-protobuf5 -- -ra + run: tox -e py310-test-opentelemetry-proto-protobuf6 -- -ra - py311-test-opentelemetry-proto-protobuf5_ubuntu-latest: - name: opentelemetry-proto-protobuf5 3.11 Ubuntu + py311-test-opentelemetry-proto-protobuf6_ubuntu-latest: + name: opentelemetry-proto-protobuf6 3.11 Ubuntu runs-on: ubuntu-latest timeout-minutes: 30 steps: @@ -197,10 +197,10 @@ jobs: run: pip install tox - name: Run tests - run: tox -e py311-test-opentelemetry-proto-protobuf5 -- -ra + run: tox -e py311-test-opentelemetry-proto-protobuf6 -- -ra - py312-test-opentelemetry-proto-protobuf5_ubuntu-latest: - name: opentelemetry-proto-protobuf5 3.12 Ubuntu + py312-test-opentelemetry-proto-protobuf6_ubuntu-latest: + name: opentelemetry-proto-protobuf6 3.12 Ubuntu runs-on: ubuntu-latest timeout-minutes: 30 steps: @@ -216,10 +216,10 @@ jobs: run: pip install tox - name: Run tests - run: tox -e py312-test-opentelemetry-proto-protobuf5 -- -ra + run: tox -e py312-test-opentelemetry-proto-protobuf6 -- -ra - py313-test-opentelemetry-proto-protobuf5_ubuntu-latest: - name: opentelemetry-proto-protobuf5 3.13 Ubuntu + py313-test-opentelemetry-proto-protobuf6_ubuntu-latest: + name: opentelemetry-proto-protobuf6 3.13 Ubuntu runs-on: ubuntu-latest timeout-minutes: 30 steps: @@ -235,10 +235,10 @@ jobs: run: pip install tox - name: Run tests - run: tox -e py313-test-opentelemetry-proto-protobuf5 -- -ra + run: tox -e py313-test-opentelemetry-proto-protobuf6 -- -ra - pypy3-test-opentelemetry-proto-protobuf5_ubuntu-latest: - name: opentelemetry-proto-protobuf5 pypy-3.9 Ubuntu + pypy3-test-opentelemetry-proto-protobuf6_ubuntu-latest: + name: opentelemetry-proto-protobuf6 pypy-3.9 Ubuntu runs-on: ubuntu-latest timeout-minutes: 30 steps: @@ -254,7 +254,7 @@ jobs: run: pip install tox - name: Run tests - run: tox -e pypy3-test-opentelemetry-proto-protobuf5 -- -ra + run: tox -e pypy3-test-opentelemetry-proto-protobuf6 -- -ra py39-test-opentelemetry-sdk_ubuntu-latest: name: opentelemetry-sdk 3.9 Ubuntu @@ -2231,8 +2231,8 @@ jobs: - name: Run tests run: tox -e pypy3-test-opentelemetry-api -- -ra - py39-test-opentelemetry-proto-protobuf5_windows-latest: - name: opentelemetry-proto-protobuf5 3.9 Windows + py39-test-opentelemetry-proto-protobuf6_windows-latest: + name: opentelemetry-proto-protobuf6 3.9 Windows runs-on: windows-latest timeout-minutes: 30 steps: @@ -2251,10 +2251,10 @@ jobs: run: git config --system core.longpaths true - name: Run tests - run: tox -e py39-test-opentelemetry-proto-protobuf5 -- -ra + run: tox -e py39-test-opentelemetry-proto-protobuf6 -- -ra - py310-test-opentelemetry-proto-protobuf5_windows-latest: - name: opentelemetry-proto-protobuf5 3.10 Windows + py310-test-opentelemetry-proto-protobuf6_windows-latest: + name: opentelemetry-proto-protobuf6 3.10 Windows runs-on: windows-latest timeout-minutes: 30 steps: @@ -2273,10 +2273,10 @@ jobs: run: git config --system core.longpaths true - name: Run tests - run: tox -e py310-test-opentelemetry-proto-protobuf5 -- -ra + run: tox -e py310-test-opentelemetry-proto-protobuf6 -- -ra - py311-test-opentelemetry-proto-protobuf5_windows-latest: - name: opentelemetry-proto-protobuf5 3.11 Windows + py311-test-opentelemetry-proto-protobuf6_windows-latest: + name: opentelemetry-proto-protobuf6 3.11 Windows runs-on: windows-latest timeout-minutes: 30 steps: @@ -2295,10 +2295,10 @@ jobs: run: git config --system core.longpaths true - name: Run tests - run: tox -e py311-test-opentelemetry-proto-protobuf5 -- -ra + run: tox -e py311-test-opentelemetry-proto-protobuf6 -- -ra - py312-test-opentelemetry-proto-protobuf5_windows-latest: - name: opentelemetry-proto-protobuf5 3.12 Windows + py312-test-opentelemetry-proto-protobuf6_windows-latest: + name: opentelemetry-proto-protobuf6 3.12 Windows runs-on: windows-latest timeout-minutes: 30 steps: @@ -2317,10 +2317,10 @@ jobs: run: git config --system core.longpaths true - name: Run tests - run: tox -e py312-test-opentelemetry-proto-protobuf5 -- -ra + run: tox -e py312-test-opentelemetry-proto-protobuf6 -- -ra - py313-test-opentelemetry-proto-protobuf5_windows-latest: - name: opentelemetry-proto-protobuf5 3.13 Windows + py313-test-opentelemetry-proto-protobuf6_windows-latest: + name: opentelemetry-proto-protobuf6 3.13 Windows runs-on: windows-latest timeout-minutes: 30 steps: @@ -2339,10 +2339,10 @@ jobs: run: git config --system core.longpaths true - name: Run tests - run: tox -e py313-test-opentelemetry-proto-protobuf5 -- -ra + run: tox -e py313-test-opentelemetry-proto-protobuf6 -- -ra - pypy3-test-opentelemetry-proto-protobuf5_windows-latest: - name: opentelemetry-proto-protobuf5 pypy-3.9 Windows + pypy3-test-opentelemetry-proto-protobuf6_windows-latest: + name: opentelemetry-proto-protobuf6 pypy-3.9 Windows runs-on: windows-latest timeout-minutes: 30 steps: @@ -2361,7 +2361,7 @@ jobs: run: git config --system core.longpaths true - name: Run tests - run: tox -e pypy3-test-opentelemetry-proto-protobuf5 -- -ra + run: tox -e pypy3-test-opentelemetry-proto-protobuf6 -- -ra py39-test-opentelemetry-sdk_windows-latest: name: opentelemetry-sdk 3.9 Windows diff --git a/CHANGELOG.md b/CHANGELOG.md index 19a3434190e..bf2cfde186d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -23,6 +23,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ([#4637](https://github.com/open-telemetry/opentelemetry-python/pull/4637)) - Logging API accepts optional `context`; deprecates `trace_id`, `span_id`, `trace_flags`. ([#4597](https://github.com/open-telemetry/opentelemetry-python/pull/4597)) +- Add support to Protobuf 6 and regenerate proto files; Drop support to Protobuf 5 + ([#4643](https://github.com/open-telemetry/opentelemetry-python/pull/4643)) ## Version 1.34.0/0.55b0 (2025-06-04) diff --git a/docs-requirements.txt b/docs-requirements.txt index 2a8d99844f2..fabb91b0401 100644 --- a/docs-requirements.txt +++ b/docs-requirements.txt @@ -25,4 +25,4 @@ opentracing~=2.2.0 thrift~=0.10 wrapt>=1.0.0,<2.0.0 markupsafe~=2.0 -protobuf==5.26.1 +protobuf==6.31.1 diff --git a/exporter/opentelemetry-exporter-otlp-proto-common/test-requirements.txt b/exporter/opentelemetry-exporter-otlp-proto-common/test-requirements.txt index 1c295c81ca5..4a693fd4101 100644 --- a/exporter/opentelemetry-exporter-otlp-proto-common/test-requirements.txt +++ b/exporter/opentelemetry-exporter-otlp-proto-common/test-requirements.txt @@ -3,7 +3,7 @@ importlib-metadata==6.11.0 iniconfig==2.0.0 packaging==24.0 pluggy==1.5.0 -protobuf==5.26.1 +protobuf==6.31.1 py-cpuinfo==9.0.0 pytest==7.4.4 tomli==2.0.1 diff --git a/exporter/opentelemetry-exporter-otlp-proto-grpc/pyproject.toml b/exporter/opentelemetry-exporter-otlp-proto-grpc/pyproject.toml index 5368ea6c02f..d2ebadbd2b4 100644 --- a/exporter/opentelemetry-exporter-otlp-proto-grpc/pyproject.toml +++ b/exporter/opentelemetry-exporter-otlp-proto-grpc/pyproject.toml @@ -26,9 +26,8 @@ classifiers = [ "Programming Language :: Python :: 3.13", ] dependencies = [ - "googleapis-common-protos ~= 1.52", - "grpcio >= 1.63.2, < 2.0.0; python_version < '3.13'", - "grpcio >= 1.66.2, < 2.0.0; python_version >= '3.13'", + "googleapis-common-protos ~= 1.70", + "grpcio >= 1.73.0, < 2.0.0", "opentelemetry-api ~= 1.15", "opentelemetry-proto == 1.35.0.dev", "opentelemetry-sdk ~= 1.35.0.dev", diff --git a/exporter/opentelemetry-exporter-otlp-proto-grpc/test-requirements.txt b/exporter/opentelemetry-exporter-otlp-proto-grpc/test-requirements.txt index 5e6e2fcff12..7731c826a53 100644 --- a/exporter/opentelemetry-exporter-otlp-proto-grpc/test-requirements.txt +++ b/exporter/opentelemetry-exporter-otlp-proto-grpc/test-requirements.txt @@ -1,17 +1,17 @@ asgiref==3.7.2 -grpcio==1.66.2 +googleapis-common-protos==1.70.0 +grpcio==1.73.0 +protobuf==6.31.1 importlib-metadata==6.11.0 iniconfig==2.0.0 packaging==24.0 pluggy==1.5.0 -protobuf==5.26.1 py-cpuinfo==9.0.0 pytest==7.4.4 tomli==2.0.1 typing_extensions==4.10.0 wrapt==1.16.0 zipp==3.19.2 -googleapis-common-protos==1.63.2 -e opentelemetry-api -e tests/opentelemetry-test-utils -e exporter/opentelemetry-exporter-otlp-proto-common diff --git a/exporter/opentelemetry-exporter-otlp-proto-http/test-requirements.txt b/exporter/opentelemetry-exporter-otlp-proto-http/test-requirements.txt index 3562b3c850c..5625717a589 100644 --- a/exporter/opentelemetry-exporter-otlp-proto-http/test-requirements.txt +++ b/exporter/opentelemetry-exporter-otlp-proto-http/test-requirements.txt @@ -1,13 +1,13 @@ asgiref==3.7.2 certifi==2024.7.4 charset-normalizer==3.3.2 -googleapis-common-protos==1.63.2 +googleapis-common-protos==1.70.0 idna==3.7 importlib-metadata==6.11.0 iniconfig==2.0.0 packaging==24.0 pluggy==1.5.0 -protobuf==5.26.1 +protobuf==6.31.1 py-cpuinfo==9.0.0 pytest==7.4.4 PyYAML==6.0.1 diff --git a/gen-requirements.txt b/gen-requirements.txt index 3cd7e79a440..23bfba6d07c 100644 --- a/gen-requirements.txt +++ b/gen-requirements.txt @@ -1,5 +1,5 @@ # Use caution when bumping this version to ensure compatibility with the currently supported protobuf version. # Pinning this to the oldest grpcio version that supports protobuf 5 helps avoid RuntimeWarning messages # from the generated protobuf code and ensures continued stability for newer grpcio versions. -grpcio-tools==1.63.2 -mypy-protobuf~=3.5.0 +grpcio-tools==1.73.0 +mypy-protobuf==3.6.0 diff --git a/opentelemetry-proto/pyproject.toml b/opentelemetry-proto/pyproject.toml index c19e3cb8d9a..78cef90610d 100644 --- a/opentelemetry-proto/pyproject.toml +++ b/opentelemetry-proto/pyproject.toml @@ -25,7 +25,7 @@ classifiers = [ "Programming Language :: Python :: 3.13", ] dependencies = [ - "protobuf>=5.0, < 6.0", + "protobuf>=6.0, < 7.0", ] [project.urls] diff --git a/opentelemetry-proto/src/opentelemetry/proto/collector/logs/v1/logs_service_pb2.py b/opentelemetry-proto/src/opentelemetry/proto/collector/logs/v1/logs_service_pb2.py index 17f7196eee6..85415229f6b 100644 --- a/opentelemetry-proto/src/opentelemetry/proto/collector/logs/v1/logs_service_pb2.py +++ b/opentelemetry-proto/src/opentelemetry/proto/collector/logs/v1/logs_service_pb2.py @@ -1,45 +1,44 @@ # -*- coding: utf-8 -*- # Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE # source: opentelemetry/proto/collector/logs/v1/logs_service.proto -# Protobuf Python Version: 5.26.1 +# Protobuf Python Version: 6.31.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version from google.protobuf import symbol_database as _symbol_database from google.protobuf.internal import builder as _builder - +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 6, + 31, + 0, + '', + 'opentelemetry/proto/collector/logs/v1/logs_service.proto' +) # @@protoc_insertion_point(imports) _sym_db = _symbol_database.Default() -from opentelemetry.proto.logs.v1 import ( - logs_pb2 as opentelemetry_dot_proto_dot_logs_dot_v1_dot_logs__pb2, -) +from opentelemetry.proto.logs.v1 import logs_pb2 as opentelemetry_dot_proto_dot_logs_dot_v1_dot_logs__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile( - b'\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' -) +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\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') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages( - DESCRIPTOR, - "opentelemetry.proto.collector.logs.v1.logs_service_pb2", - _globals, -) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'opentelemetry.proto.collector.logs.v1.logs_service_pb2', _globals) if not _descriptor._USE_C_DESCRIPTORS: - _globals["DESCRIPTOR"]._loaded_options = None - _globals["DESCRIPTOR"]._serialized_options = ( - b"\n(io.opentelemetry.proto.collector.logs.v1B\020LogsServiceProtoP\001Z0go.opentelemetry.io/proto/otlp/collector/logs/v1\252\002%OpenTelemetry.Proto.Collector.Logs.V1" - ) - _globals["_EXPORTLOGSSERVICEREQUEST"]._serialized_start = 139 - _globals["_EXPORTLOGSSERVICEREQUEST"]._serialized_end = 231 - _globals["_EXPORTLOGSSERVICERESPONSE"]._serialized_start = 233 - _globals["_EXPORTLOGSSERVICERESPONSE"]._serialized_end = 350 - _globals["_EXPORTLOGSPARTIALSUCCESS"]._serialized_start = 352 - _globals["_EXPORTLOGSPARTIALSUCCESS"]._serialized_end = 431 - _globals["_LOGSSERVICE"]._serialized_start = 434 - _globals["_LOGSSERVICE"]._serialized_end = 591 + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'\n(io.opentelemetry.proto.collector.logs.v1B\020LogsServiceProtoP\001Z0go.opentelemetry.io/proto/otlp/collector/logs/v1\252\002%OpenTelemetry.Proto.Collector.Logs.V1' + _globals['_EXPORTLOGSSERVICEREQUEST']._serialized_start=139 + _globals['_EXPORTLOGSSERVICEREQUEST']._serialized_end=231 + _globals['_EXPORTLOGSSERVICERESPONSE']._serialized_start=233 + _globals['_EXPORTLOGSSERVICERESPONSE']._serialized_end=350 + _globals['_EXPORTLOGSPARTIALSUCCESS']._serialized_start=352 + _globals['_EXPORTLOGSPARTIALSUCCESS']._serialized_end=431 + _globals['_LOGSSERVICE']._serialized_start=434 + _globals['_LOGSSERVICE']._serialized_end=591 # @@protoc_insertion_point(module_scope) diff --git a/opentelemetry-proto/src/opentelemetry/proto/collector/logs/v1/logs_service_pb2.pyi b/opentelemetry-proto/src/opentelemetry/proto/collector/logs/v1/logs_service_pb2.pyi index f4c7489b31d..7a47b378f0c 100644 --- a/opentelemetry-proto/src/opentelemetry/proto/collector/logs/v1/logs_service_pb2.pyi +++ b/opentelemetry-proto/src/opentelemetry/proto/collector/logs/v1/logs_service_pb2.pyi @@ -22,23 +22,17 @@ import google.protobuf.descriptor import google.protobuf.internal.containers import google.protobuf.message import opentelemetry.proto.logs.v1.logs_pb2 -import sys - -import typing as typing_extensions +import typing DESCRIPTOR: google.protobuf.descriptor.FileDescriptor -@typing_extensions.final +@typing.final class ExportLogsServiceRequest(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor RESOURCE_LOGS_FIELD_NUMBER: builtins.int @property - def resource_logs( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - opentelemetry.proto.logs.v1.logs_pb2.ResourceLogs - ]: + def resource_logs(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[opentelemetry.proto.logs.v1.logs_pb2.ResourceLogs]: """An array of ResourceLogs. For data coming from a single resource this array will typically contain one element. Intermediary nodes (such as OpenTelemetry Collector) that receive @@ -49,23 +43,13 @@ class ExportLogsServiceRequest(google.protobuf.message.Message): def __init__( self, *, - resource_logs: ( - collections.abc.Iterable[ - opentelemetry.proto.logs.v1.logs_pb2.ResourceLogs - ] - | None - ) = ..., - ) -> None: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "resource_logs", b"resource_logs" - ], + resource_logs: collections.abc.Iterable[opentelemetry.proto.logs.v1.logs_pb2.ResourceLogs] | None = ..., ) -> None: ... + def ClearField(self, field_name: typing.Literal["resource_logs", b"resource_logs"]) -> None: ... global___ExportLogsServiceRequest = ExportLogsServiceRequest -@typing_extensions.final +@typing.final class ExportLogsServiceResponse(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -94,22 +78,12 @@ class ExportLogsServiceResponse(google.protobuf.message.Message): *, partial_success: global___ExportLogsPartialSuccess | None = ..., ) -> None: ... - def HasField( - self, - field_name: typing_extensions.Literal[ - "partial_success", b"partial_success" - ], - ) -> builtins.bool: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "partial_success", b"partial_success" - ], - ) -> None: ... + def HasField(self, field_name: typing.Literal["partial_success", b"partial_success"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["partial_success", b"partial_success"]) -> None: ... global___ExportLogsServiceResponse = ExportLogsServiceResponse -@typing_extensions.final +@typing.final class ExportLogsPartialSuccess(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -136,14 +110,6 @@ class ExportLogsPartialSuccess(google.protobuf.message.Message): rejected_log_records: builtins.int = ..., error_message: builtins.str = ..., ) -> None: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "error_message", - b"error_message", - "rejected_log_records", - b"rejected_log_records", - ], - ) -> None: ... + def ClearField(self, field_name: typing.Literal["error_message", b"error_message", "rejected_log_records", b"rejected_log_records"]) -> None: ... global___ExportLogsPartialSuccess = ExportLogsPartialSuccess diff --git a/opentelemetry-proto/src/opentelemetry/proto/collector/logs/v1/logs_service_pb2_grpc.py b/opentelemetry-proto/src/opentelemetry/proto/collector/logs/v1/logs_service_pb2_grpc.py index 99c720386b5..bf332b35492 100644 --- a/opentelemetry-proto/src/opentelemetry/proto/collector/logs/v1/logs_service_pb2_grpc.py +++ b/opentelemetry-proto/src/opentelemetry/proto/collector/logs/v1/logs_service_pb2_grpc.py @@ -3,35 +3,25 @@ import grpc import warnings -from opentelemetry.proto.collector.logs.v1 import ( - logs_service_pb2 as opentelemetry_dot_proto_dot_collector_dot_logs_dot_v1_dot_logs__service__pb2, -) +from opentelemetry.proto.collector.logs.v1 import logs_service_pb2 as opentelemetry_dot_proto_dot_collector_dot_logs_dot_v1_dot_logs__service__pb2 -GRPC_GENERATED_VERSION = "1.63.2" +GRPC_GENERATED_VERSION = '1.73.0' GRPC_VERSION = grpc.__version__ -EXPECTED_ERROR_RELEASE = "1.65.0" -SCHEDULED_RELEASE_DATE = "June 25, 2024" _version_not_supported = False try: from grpc._utilities import first_version_is_lower - - _version_not_supported = first_version_is_lower( - GRPC_VERSION, GRPC_GENERATED_VERSION - ) + _version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION) except ImportError: _version_not_supported = True if _version_not_supported: - warnings.warn( - f"The grpc package installed is at version {GRPC_VERSION}," - + f" but the generated code in opentelemetry/proto/collector/logs/v1/logs_service_pb2_grpc.py depends on" - + f" grpcio>={GRPC_GENERATED_VERSION}." - + f" Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}" - + f" or downgrade your generated code using grpcio-tools<={GRPC_VERSION}." - + f" This warning will become an error in {EXPECTED_ERROR_RELEASE}," - + f" scheduled for release on {SCHEDULED_RELEASE_DATE}.", - RuntimeWarning, + raise RuntimeError( + f'The grpc package installed is at version {GRPC_VERSION},' + + f' but the generated code in opentelemetry/proto/collector/logs/v1/logs_service_pb2_grpc.py depends on' + + f' grpcio>={GRPC_GENERATED_VERSION}.' + + f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}' + + f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.' ) @@ -48,11 +38,10 @@ def __init__(self, channel): channel: A grpc.Channel. """ self.Export = channel.unary_unary( - "/opentelemetry.proto.collector.logs.v1.LogsService/Export", - request_serializer=opentelemetry_dot_proto_dot_collector_dot_logs_dot_v1_dot_logs__service__pb2.ExportLogsServiceRequest.SerializeToString, - response_deserializer=opentelemetry_dot_proto_dot_collector_dot_logs_dot_v1_dot_logs__service__pb2.ExportLogsServiceResponse.FromString, - _registered_method=True, - ) + '/opentelemetry.proto.collector.logs.v1.LogsService/Export', + request_serializer=opentelemetry_dot_proto_dot_collector_dot_logs_dot_v1_dot_logs__service__pb2.ExportLogsServiceRequest.SerializeToString, + response_deserializer=opentelemetry_dot_proto_dot_collector_dot_logs_dot_v1_dot_logs__service__pb2.ExportLogsServiceResponse.FromString, + _registered_method=True) class LogsServiceServicer(object): @@ -66,26 +55,25 @@ def Export(self, request, context): alive for the entire life of the application. """ context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details("Method not implemented!") - raise NotImplementedError("Method not implemented!") + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') def add_LogsServiceServicer_to_server(servicer, server): rpc_method_handlers = { - "Export": grpc.unary_unary_rpc_method_handler( - servicer.Export, - request_deserializer=opentelemetry_dot_proto_dot_collector_dot_logs_dot_v1_dot_logs__service__pb2.ExportLogsServiceRequest.FromString, - response_serializer=opentelemetry_dot_proto_dot_collector_dot_logs_dot_v1_dot_logs__service__pb2.ExportLogsServiceResponse.SerializeToString, - ), + 'Export': grpc.unary_unary_rpc_method_handler( + servicer.Export, + request_deserializer=opentelemetry_dot_proto_dot_collector_dot_logs_dot_v1_dot_logs__service__pb2.ExportLogsServiceRequest.FromString, + response_serializer=opentelemetry_dot_proto_dot_collector_dot_logs_dot_v1_dot_logs__service__pb2.ExportLogsServiceResponse.SerializeToString, + ), } generic_handler = grpc.method_handlers_generic_handler( - "opentelemetry.proto.collector.logs.v1.LogsService", - rpc_method_handlers, - ) + 'opentelemetry.proto.collector.logs.v1.LogsService', rpc_method_handlers) server.add_generic_rpc_handlers((generic_handler,)) + server.add_registered_method_handlers('opentelemetry.proto.collector.logs.v1.LogsService', rpc_method_handlers) -# This class is part of an EXPERIMENTAL API. + # This class is part of an EXPERIMENTAL API. class LogsService(object): """Service that can be used to push logs between one Application instrumented with OpenTelemetry and an collector, or between an collector and a central collector (in this @@ -93,22 +81,20 @@ class LogsService(object): """ @staticmethod - def Export( - request, - target, - options=(), - channel_credentials=None, - call_credentials=None, - insecure=False, - compression=None, - wait_for_ready=None, - timeout=None, - metadata=None, - ): + def Export(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): return grpc.experimental.unary_unary( request, target, - "/opentelemetry.proto.collector.logs.v1.LogsService/Export", + '/opentelemetry.proto.collector.logs.v1.LogsService/Export', opentelemetry_dot_proto_dot_collector_dot_logs_dot_v1_dot_logs__service__pb2.ExportLogsServiceRequest.SerializeToString, opentelemetry_dot_proto_dot_collector_dot_logs_dot_v1_dot_logs__service__pb2.ExportLogsServiceResponse.FromString, options, @@ -119,5 +105,4 @@ def Export( wait_for_ready, timeout, metadata, - _registered_method=True, - ) + _registered_method=True) diff --git a/opentelemetry-proto/src/opentelemetry/proto/collector/metrics/v1/metrics_service_pb2.py b/opentelemetry-proto/src/opentelemetry/proto/collector/metrics/v1/metrics_service_pb2.py index f25b8801525..feaadd889af 100644 --- a/opentelemetry-proto/src/opentelemetry/proto/collector/metrics/v1/metrics_service_pb2.py +++ b/opentelemetry-proto/src/opentelemetry/proto/collector/metrics/v1/metrics_service_pb2.py @@ -1,45 +1,44 @@ # -*- coding: utf-8 -*- # Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE # source: opentelemetry/proto/collector/metrics/v1/metrics_service.proto -# Protobuf Python Version: 5.26.1 +# Protobuf Python Version: 6.31.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version from google.protobuf import symbol_database as _symbol_database from google.protobuf.internal import builder as _builder - +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 6, + 31, + 0, + '', + 'opentelemetry/proto/collector/metrics/v1/metrics_service.proto' +) # @@protoc_insertion_point(imports) _sym_db = _symbol_database.Default() -from opentelemetry.proto.metrics.v1 import ( - metrics_pb2 as opentelemetry_dot_proto_dot_metrics_dot_v1_dot_metrics__pb2, -) +from opentelemetry.proto.metrics.v1 import metrics_pb2 as opentelemetry_dot_proto_dot_metrics_dot_v1_dot_metrics__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile( - b'\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' -) +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\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') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages( - DESCRIPTOR, - "opentelemetry.proto.collector.metrics.v1.metrics_service_pb2", - _globals, -) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'opentelemetry.proto.collector.metrics.v1.metrics_service_pb2', _globals) if not _descriptor._USE_C_DESCRIPTORS: - _globals["DESCRIPTOR"]._loaded_options = None - _globals["DESCRIPTOR"]._serialized_options = ( - b"\n+io.opentelemetry.proto.collector.metrics.v1B\023MetricsServiceProtoP\001Z3go.opentelemetry.io/proto/otlp/collector/metrics/v1\252\002(OpenTelemetry.Proto.Collector.Metrics.V1" - ) - _globals["_EXPORTMETRICSSERVICEREQUEST"]._serialized_start = 154 - _globals["_EXPORTMETRICSSERVICEREQUEST"]._serialized_end = 258 - _globals["_EXPORTMETRICSSERVICERESPONSE"]._serialized_start = 260 - _globals["_EXPORTMETRICSSERVICERESPONSE"]._serialized_end = 386 - _globals["_EXPORTMETRICSPARTIALSUCCESS"]._serialized_start = 388 - _globals["_EXPORTMETRICSPARTIALSUCCESS"]._serialized_end = 470 - _globals["_METRICSSERVICE"]._serialized_start = 473 - _globals["_METRICSSERVICE"]._serialized_end = 645 + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'\n+io.opentelemetry.proto.collector.metrics.v1B\023MetricsServiceProtoP\001Z3go.opentelemetry.io/proto/otlp/collector/metrics/v1\252\002(OpenTelemetry.Proto.Collector.Metrics.V1' + _globals['_EXPORTMETRICSSERVICEREQUEST']._serialized_start=154 + _globals['_EXPORTMETRICSSERVICEREQUEST']._serialized_end=258 + _globals['_EXPORTMETRICSSERVICERESPONSE']._serialized_start=260 + _globals['_EXPORTMETRICSSERVICERESPONSE']._serialized_end=386 + _globals['_EXPORTMETRICSPARTIALSUCCESS']._serialized_start=388 + _globals['_EXPORTMETRICSPARTIALSUCCESS']._serialized_end=470 + _globals['_METRICSSERVICE']._serialized_start=473 + _globals['_METRICSSERVICE']._serialized_end=645 # @@protoc_insertion_point(module_scope) diff --git a/opentelemetry-proto/src/opentelemetry/proto/collector/metrics/v1/metrics_service_pb2.pyi b/opentelemetry-proto/src/opentelemetry/proto/collector/metrics/v1/metrics_service_pb2.pyi index 1915f8a619e..229337b3361 100644 --- a/opentelemetry-proto/src/opentelemetry/proto/collector/metrics/v1/metrics_service_pb2.pyi +++ b/opentelemetry-proto/src/opentelemetry/proto/collector/metrics/v1/metrics_service_pb2.pyi @@ -22,23 +22,17 @@ import google.protobuf.descriptor import google.protobuf.internal.containers import google.protobuf.message import opentelemetry.proto.metrics.v1.metrics_pb2 -import sys - -import typing as typing_extensions +import typing DESCRIPTOR: google.protobuf.descriptor.FileDescriptor -@typing_extensions.final +@typing.final class ExportMetricsServiceRequest(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor RESOURCE_METRICS_FIELD_NUMBER: builtins.int @property - def resource_metrics( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - opentelemetry.proto.metrics.v1.metrics_pb2.ResourceMetrics - ]: + def resource_metrics(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[opentelemetry.proto.metrics.v1.metrics_pb2.ResourceMetrics]: """An array of ResourceMetrics. For data coming from a single resource this array will typically contain one element. Intermediary nodes (such as OpenTelemetry Collector) that receive @@ -49,23 +43,13 @@ class ExportMetricsServiceRequest(google.protobuf.message.Message): def __init__( self, *, - resource_metrics: ( - collections.abc.Iterable[ - opentelemetry.proto.metrics.v1.metrics_pb2.ResourceMetrics - ] - | None - ) = ..., - ) -> None: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "resource_metrics", b"resource_metrics" - ], + resource_metrics: collections.abc.Iterable[opentelemetry.proto.metrics.v1.metrics_pb2.ResourceMetrics] | None = ..., ) -> None: ... + def ClearField(self, field_name: typing.Literal["resource_metrics", b"resource_metrics"]) -> None: ... global___ExportMetricsServiceRequest = ExportMetricsServiceRequest -@typing_extensions.final +@typing.final class ExportMetricsServiceResponse(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -94,22 +78,12 @@ class ExportMetricsServiceResponse(google.protobuf.message.Message): *, partial_success: global___ExportMetricsPartialSuccess | None = ..., ) -> None: ... - def HasField( - self, - field_name: typing_extensions.Literal[ - "partial_success", b"partial_success" - ], - ) -> builtins.bool: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "partial_success", b"partial_success" - ], - ) -> None: ... + def HasField(self, field_name: typing.Literal["partial_success", b"partial_success"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["partial_success", b"partial_success"]) -> None: ... global___ExportMetricsServiceResponse = ExportMetricsServiceResponse -@typing_extensions.final +@typing.final class ExportMetricsPartialSuccess(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -136,14 +110,6 @@ class ExportMetricsPartialSuccess(google.protobuf.message.Message): rejected_data_points: builtins.int = ..., error_message: builtins.str = ..., ) -> None: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "error_message", - b"error_message", - "rejected_data_points", - b"rejected_data_points", - ], - ) -> None: ... + def ClearField(self, field_name: typing.Literal["error_message", b"error_message", "rejected_data_points", b"rejected_data_points"]) -> None: ... global___ExportMetricsPartialSuccess = ExportMetricsPartialSuccess diff --git a/opentelemetry-proto/src/opentelemetry/proto/collector/metrics/v1/metrics_service_pb2_grpc.py b/opentelemetry-proto/src/opentelemetry/proto/collector/metrics/v1/metrics_service_pb2_grpc.py index fcf72343f8b..f344ce9cc34 100644 --- a/opentelemetry-proto/src/opentelemetry/proto/collector/metrics/v1/metrics_service_pb2_grpc.py +++ b/opentelemetry-proto/src/opentelemetry/proto/collector/metrics/v1/metrics_service_pb2_grpc.py @@ -3,35 +3,25 @@ import grpc import warnings -from opentelemetry.proto.collector.metrics.v1 import ( - metrics_service_pb2 as opentelemetry_dot_proto_dot_collector_dot_metrics_dot_v1_dot_metrics__service__pb2, -) +from opentelemetry.proto.collector.metrics.v1 import metrics_service_pb2 as opentelemetry_dot_proto_dot_collector_dot_metrics_dot_v1_dot_metrics__service__pb2 -GRPC_GENERATED_VERSION = "1.63.2" +GRPC_GENERATED_VERSION = '1.73.0' GRPC_VERSION = grpc.__version__ -EXPECTED_ERROR_RELEASE = "1.65.0" -SCHEDULED_RELEASE_DATE = "June 25, 2024" _version_not_supported = False try: from grpc._utilities import first_version_is_lower - - _version_not_supported = first_version_is_lower( - GRPC_VERSION, GRPC_GENERATED_VERSION - ) + _version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION) except ImportError: _version_not_supported = True if _version_not_supported: - warnings.warn( - f"The grpc package installed is at version {GRPC_VERSION}," - + f" but the generated code in opentelemetry/proto/collector/metrics/v1/metrics_service_pb2_grpc.py depends on" - + f" grpcio>={GRPC_GENERATED_VERSION}." - + f" Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}" - + f" or downgrade your generated code using grpcio-tools<={GRPC_VERSION}." - + f" This warning will become an error in {EXPECTED_ERROR_RELEASE}," - + f" scheduled for release on {SCHEDULED_RELEASE_DATE}.", - RuntimeWarning, + raise RuntimeError( + f'The grpc package installed is at version {GRPC_VERSION},' + + f' but the generated code in opentelemetry/proto/collector/metrics/v1/metrics_service_pb2_grpc.py depends on' + + f' grpcio>={GRPC_GENERATED_VERSION}.' + + f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}' + + f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.' ) @@ -48,11 +38,10 @@ def __init__(self, channel): channel: A grpc.Channel. """ self.Export = channel.unary_unary( - "/opentelemetry.proto.collector.metrics.v1.MetricsService/Export", - request_serializer=opentelemetry_dot_proto_dot_collector_dot_metrics_dot_v1_dot_metrics__service__pb2.ExportMetricsServiceRequest.SerializeToString, - response_deserializer=opentelemetry_dot_proto_dot_collector_dot_metrics_dot_v1_dot_metrics__service__pb2.ExportMetricsServiceResponse.FromString, - _registered_method=True, - ) + '/opentelemetry.proto.collector.metrics.v1.MetricsService/Export', + request_serializer=opentelemetry_dot_proto_dot_collector_dot_metrics_dot_v1_dot_metrics__service__pb2.ExportMetricsServiceRequest.SerializeToString, + response_deserializer=opentelemetry_dot_proto_dot_collector_dot_metrics_dot_v1_dot_metrics__service__pb2.ExportMetricsServiceResponse.FromString, + _registered_method=True) class MetricsServiceServicer(object): @@ -66,26 +55,25 @@ def Export(self, request, context): alive for the entire life of the application. """ context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details("Method not implemented!") - raise NotImplementedError("Method not implemented!") + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') def add_MetricsServiceServicer_to_server(servicer, server): rpc_method_handlers = { - "Export": grpc.unary_unary_rpc_method_handler( - servicer.Export, - request_deserializer=opentelemetry_dot_proto_dot_collector_dot_metrics_dot_v1_dot_metrics__service__pb2.ExportMetricsServiceRequest.FromString, - response_serializer=opentelemetry_dot_proto_dot_collector_dot_metrics_dot_v1_dot_metrics__service__pb2.ExportMetricsServiceResponse.SerializeToString, - ), + 'Export': grpc.unary_unary_rpc_method_handler( + servicer.Export, + request_deserializer=opentelemetry_dot_proto_dot_collector_dot_metrics_dot_v1_dot_metrics__service__pb2.ExportMetricsServiceRequest.FromString, + response_serializer=opentelemetry_dot_proto_dot_collector_dot_metrics_dot_v1_dot_metrics__service__pb2.ExportMetricsServiceResponse.SerializeToString, + ), } generic_handler = grpc.method_handlers_generic_handler( - "opentelemetry.proto.collector.metrics.v1.MetricsService", - rpc_method_handlers, - ) + 'opentelemetry.proto.collector.metrics.v1.MetricsService', rpc_method_handlers) server.add_generic_rpc_handlers((generic_handler,)) + server.add_registered_method_handlers('opentelemetry.proto.collector.metrics.v1.MetricsService', rpc_method_handlers) -# This class is part of an EXPERIMENTAL API. + # This class is part of an EXPERIMENTAL API. class MetricsService(object): """Service that can be used to push metrics between one Application instrumented with OpenTelemetry and a collector, or between a collector and a @@ -93,22 +81,20 @@ class MetricsService(object): """ @staticmethod - def Export( - request, - target, - options=(), - channel_credentials=None, - call_credentials=None, - insecure=False, - compression=None, - wait_for_ready=None, - timeout=None, - metadata=None, - ): + def Export(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): return grpc.experimental.unary_unary( request, target, - "/opentelemetry.proto.collector.metrics.v1.MetricsService/Export", + '/opentelemetry.proto.collector.metrics.v1.MetricsService/Export', opentelemetry_dot_proto_dot_collector_dot_metrics_dot_v1_dot_metrics__service__pb2.ExportMetricsServiceRequest.SerializeToString, opentelemetry_dot_proto_dot_collector_dot_metrics_dot_v1_dot_metrics__service__pb2.ExportMetricsServiceResponse.FromString, options, @@ -119,5 +105,4 @@ def Export( wait_for_ready, timeout, metadata, - _registered_method=True, - ) + _registered_method=True) diff --git a/opentelemetry-proto/src/opentelemetry/proto/collector/trace/v1/trace_service_pb2.py b/opentelemetry-proto/src/opentelemetry/proto/collector/trace/v1/trace_service_pb2.py index 8ced74fb4c2..0f05a5f094d 100644 --- a/opentelemetry-proto/src/opentelemetry/proto/collector/trace/v1/trace_service_pb2.py +++ b/opentelemetry-proto/src/opentelemetry/proto/collector/trace/v1/trace_service_pb2.py @@ -1,45 +1,44 @@ # -*- coding: utf-8 -*- # Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE # source: opentelemetry/proto/collector/trace/v1/trace_service.proto -# Protobuf Python Version: 5.26.1 +# Protobuf Python Version: 6.31.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version from google.protobuf import symbol_database as _symbol_database from google.protobuf.internal import builder as _builder - +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 6, + 31, + 0, + '', + 'opentelemetry/proto/collector/trace/v1/trace_service.proto' +) # @@protoc_insertion_point(imports) _sym_db = _symbol_database.Default() -from opentelemetry.proto.trace.v1 import ( - trace_pb2 as opentelemetry_dot_proto_dot_trace_dot_v1_dot_trace__pb2, -) +from opentelemetry.proto.trace.v1 import trace_pb2 as opentelemetry_dot_proto_dot_trace_dot_v1_dot_trace__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile( - b'\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' -) +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\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') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages( - DESCRIPTOR, - "opentelemetry.proto.collector.trace.v1.trace_service_pb2", - _globals, -) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'opentelemetry.proto.collector.trace.v1.trace_service_pb2', _globals) if not _descriptor._USE_C_DESCRIPTORS: - _globals["DESCRIPTOR"]._loaded_options = None - _globals["DESCRIPTOR"]._serialized_options = ( - b"\n)io.opentelemetry.proto.collector.trace.v1B\021TraceServiceProtoP\001Z1go.opentelemetry.io/proto/otlp/collector/trace/v1\252\002&OpenTelemetry.Proto.Collector.Trace.V1" - ) - _globals["_EXPORTTRACESERVICEREQUEST"]._serialized_start = 144 - _globals["_EXPORTTRACESERVICEREQUEST"]._serialized_end = 240 - _globals["_EXPORTTRACESERVICERESPONSE"]._serialized_start = 242 - _globals["_EXPORTTRACESERVICERESPONSE"]._serialized_end = 362 - _globals["_EXPORTTRACEPARTIALSUCCESS"]._serialized_start = 364 - _globals["_EXPORTTRACEPARTIALSUCCESS"]._serialized_end = 438 - _globals["_TRACESERVICE"]._serialized_start = 441 - _globals["_TRACESERVICE"]._serialized_end = 603 + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'\n)io.opentelemetry.proto.collector.trace.v1B\021TraceServiceProtoP\001Z1go.opentelemetry.io/proto/otlp/collector/trace/v1\252\002&OpenTelemetry.Proto.Collector.Trace.V1' + _globals['_EXPORTTRACESERVICEREQUEST']._serialized_start=144 + _globals['_EXPORTTRACESERVICEREQUEST']._serialized_end=240 + _globals['_EXPORTTRACESERVICERESPONSE']._serialized_start=242 + _globals['_EXPORTTRACESERVICERESPONSE']._serialized_end=362 + _globals['_EXPORTTRACEPARTIALSUCCESS']._serialized_start=364 + _globals['_EXPORTTRACEPARTIALSUCCESS']._serialized_end=438 + _globals['_TRACESERVICE']._serialized_start=441 + _globals['_TRACESERVICE']._serialized_end=603 # @@protoc_insertion_point(module_scope) diff --git a/opentelemetry-proto/src/opentelemetry/proto/collector/trace/v1/trace_service_pb2.pyi b/opentelemetry-proto/src/opentelemetry/proto/collector/trace/v1/trace_service_pb2.pyi index 18772275891..6d7dab169d5 100644 --- a/opentelemetry-proto/src/opentelemetry/proto/collector/trace/v1/trace_service_pb2.pyi +++ b/opentelemetry-proto/src/opentelemetry/proto/collector/trace/v1/trace_service_pb2.pyi @@ -22,23 +22,17 @@ import google.protobuf.descriptor import google.protobuf.internal.containers import google.protobuf.message import opentelemetry.proto.trace.v1.trace_pb2 -import sys - -import typing as typing_extensions +import typing DESCRIPTOR: google.protobuf.descriptor.FileDescriptor -@typing_extensions.final +@typing.final class ExportTraceServiceRequest(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor RESOURCE_SPANS_FIELD_NUMBER: builtins.int @property - def resource_spans( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - opentelemetry.proto.trace.v1.trace_pb2.ResourceSpans - ]: + def resource_spans(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[opentelemetry.proto.trace.v1.trace_pb2.ResourceSpans]: """An array of ResourceSpans. For data coming from a single resource this array will typically contain one element. Intermediary nodes (such as OpenTelemetry Collector) that receive @@ -49,23 +43,13 @@ class ExportTraceServiceRequest(google.protobuf.message.Message): def __init__( self, *, - resource_spans: ( - collections.abc.Iterable[ - opentelemetry.proto.trace.v1.trace_pb2.ResourceSpans - ] - | None - ) = ..., - ) -> None: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "resource_spans", b"resource_spans" - ], + resource_spans: collections.abc.Iterable[opentelemetry.proto.trace.v1.trace_pb2.ResourceSpans] | None = ..., ) -> None: ... + def ClearField(self, field_name: typing.Literal["resource_spans", b"resource_spans"]) -> None: ... global___ExportTraceServiceRequest = ExportTraceServiceRequest -@typing_extensions.final +@typing.final class ExportTraceServiceResponse(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -94,22 +78,12 @@ class ExportTraceServiceResponse(google.protobuf.message.Message): *, partial_success: global___ExportTracePartialSuccess | None = ..., ) -> None: ... - def HasField( - self, - field_name: typing_extensions.Literal[ - "partial_success", b"partial_success" - ], - ) -> builtins.bool: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "partial_success", b"partial_success" - ], - ) -> None: ... + def HasField(self, field_name: typing.Literal["partial_success", b"partial_success"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["partial_success", b"partial_success"]) -> None: ... global___ExportTraceServiceResponse = ExportTraceServiceResponse -@typing_extensions.final +@typing.final class ExportTracePartialSuccess(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -136,14 +110,6 @@ class ExportTracePartialSuccess(google.protobuf.message.Message): rejected_spans: builtins.int = ..., error_message: builtins.str = ..., ) -> None: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "error_message", - b"error_message", - "rejected_spans", - b"rejected_spans", - ], - ) -> None: ... + def ClearField(self, field_name: typing.Literal["error_message", b"error_message", "rejected_spans", b"rejected_spans"]) -> None: ... global___ExportTracePartialSuccess = ExportTracePartialSuccess diff --git a/opentelemetry-proto/src/opentelemetry/proto/collector/trace/v1/trace_service_pb2_grpc.py b/opentelemetry-proto/src/opentelemetry/proto/collector/trace/v1/trace_service_pb2_grpc.py index f58f7ef6408..38fc712dd15 100644 --- a/opentelemetry-proto/src/opentelemetry/proto/collector/trace/v1/trace_service_pb2_grpc.py +++ b/opentelemetry-proto/src/opentelemetry/proto/collector/trace/v1/trace_service_pb2_grpc.py @@ -3,35 +3,25 @@ import grpc import warnings -from opentelemetry.proto.collector.trace.v1 import ( - trace_service_pb2 as opentelemetry_dot_proto_dot_collector_dot_trace_dot_v1_dot_trace__service__pb2, -) +from opentelemetry.proto.collector.trace.v1 import trace_service_pb2 as opentelemetry_dot_proto_dot_collector_dot_trace_dot_v1_dot_trace__service__pb2 -GRPC_GENERATED_VERSION = "1.63.2" +GRPC_GENERATED_VERSION = '1.73.0' GRPC_VERSION = grpc.__version__ -EXPECTED_ERROR_RELEASE = "1.65.0" -SCHEDULED_RELEASE_DATE = "June 25, 2024" _version_not_supported = False try: from grpc._utilities import first_version_is_lower - - _version_not_supported = first_version_is_lower( - GRPC_VERSION, GRPC_GENERATED_VERSION - ) + _version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION) except ImportError: _version_not_supported = True if _version_not_supported: - warnings.warn( - f"The grpc package installed is at version {GRPC_VERSION}," - + f" but the generated code in opentelemetry/proto/collector/trace/v1/trace_service_pb2_grpc.py depends on" - + f" grpcio>={GRPC_GENERATED_VERSION}." - + f" Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}" - + f" or downgrade your generated code using grpcio-tools<={GRPC_VERSION}." - + f" This warning will become an error in {EXPECTED_ERROR_RELEASE}," - + f" scheduled for release on {SCHEDULED_RELEASE_DATE}.", - RuntimeWarning, + raise RuntimeError( + f'The grpc package installed is at version {GRPC_VERSION},' + + f' but the generated code in opentelemetry/proto/collector/trace/v1/trace_service_pb2_grpc.py depends on' + + f' grpcio>={GRPC_GENERATED_VERSION}.' + + f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}' + + f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.' ) @@ -48,11 +38,10 @@ def __init__(self, channel): channel: A grpc.Channel. """ self.Export = channel.unary_unary( - "/opentelemetry.proto.collector.trace.v1.TraceService/Export", - request_serializer=opentelemetry_dot_proto_dot_collector_dot_trace_dot_v1_dot_trace__service__pb2.ExportTraceServiceRequest.SerializeToString, - response_deserializer=opentelemetry_dot_proto_dot_collector_dot_trace_dot_v1_dot_trace__service__pb2.ExportTraceServiceResponse.FromString, - _registered_method=True, - ) + '/opentelemetry.proto.collector.trace.v1.TraceService/Export', + request_serializer=opentelemetry_dot_proto_dot_collector_dot_trace_dot_v1_dot_trace__service__pb2.ExportTraceServiceRequest.SerializeToString, + response_deserializer=opentelemetry_dot_proto_dot_collector_dot_trace_dot_v1_dot_trace__service__pb2.ExportTraceServiceResponse.FromString, + _registered_method=True) class TraceServiceServicer(object): @@ -66,26 +55,25 @@ def Export(self, request, context): alive for the entire life of the application. """ context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details("Method not implemented!") - raise NotImplementedError("Method not implemented!") + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') def add_TraceServiceServicer_to_server(servicer, server): rpc_method_handlers = { - "Export": grpc.unary_unary_rpc_method_handler( - servicer.Export, - request_deserializer=opentelemetry_dot_proto_dot_collector_dot_trace_dot_v1_dot_trace__service__pb2.ExportTraceServiceRequest.FromString, - response_serializer=opentelemetry_dot_proto_dot_collector_dot_trace_dot_v1_dot_trace__service__pb2.ExportTraceServiceResponse.SerializeToString, - ), + 'Export': grpc.unary_unary_rpc_method_handler( + servicer.Export, + request_deserializer=opentelemetry_dot_proto_dot_collector_dot_trace_dot_v1_dot_trace__service__pb2.ExportTraceServiceRequest.FromString, + response_serializer=opentelemetry_dot_proto_dot_collector_dot_trace_dot_v1_dot_trace__service__pb2.ExportTraceServiceResponse.SerializeToString, + ), } generic_handler = grpc.method_handlers_generic_handler( - "opentelemetry.proto.collector.trace.v1.TraceService", - rpc_method_handlers, - ) + 'opentelemetry.proto.collector.trace.v1.TraceService', rpc_method_handlers) server.add_generic_rpc_handlers((generic_handler,)) + server.add_registered_method_handlers('opentelemetry.proto.collector.trace.v1.TraceService', rpc_method_handlers) -# This class is part of an EXPERIMENTAL API. + # This class is part of an EXPERIMENTAL API. class TraceService(object): """Service that can be used to push spans between one Application instrumented with OpenTelemetry and a collector, or between a collector and a central collector (in this @@ -93,22 +81,20 @@ class TraceService(object): """ @staticmethod - def Export( - request, - target, - options=(), - channel_credentials=None, - call_credentials=None, - insecure=False, - compression=None, - wait_for_ready=None, - timeout=None, - metadata=None, - ): + def Export(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): return grpc.experimental.unary_unary( request, target, - "/opentelemetry.proto.collector.trace.v1.TraceService/Export", + '/opentelemetry.proto.collector.trace.v1.TraceService/Export', opentelemetry_dot_proto_dot_collector_dot_trace_dot_v1_dot_trace__service__pb2.ExportTraceServiceRequest.SerializeToString, opentelemetry_dot_proto_dot_collector_dot_trace_dot_v1_dot_trace__service__pb2.ExportTraceServiceResponse.FromString, options, @@ -119,5 +105,4 @@ def Export( wait_for_ready, timeout, metadata, - _registered_method=True, - ) + _registered_method=True) diff --git a/opentelemetry-proto/src/opentelemetry/proto/common/v1/common_pb2.py b/opentelemetry-proto/src/opentelemetry/proto/common/v1/common_pb2.py index f55ae932065..f6f98402c65 100644 --- a/opentelemetry-proto/src/opentelemetry/proto/common/v1/common_pb2.py +++ b/opentelemetry-proto/src/opentelemetry/proto/common/v1/common_pb2.py @@ -1,40 +1,45 @@ # -*- coding: utf-8 -*- # Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE # source: opentelemetry/proto/common/v1/common.proto -# Protobuf Python Version: 5.26.1 +# Protobuf Python Version: 6.31.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version from google.protobuf import symbol_database as _symbol_database from google.protobuf.internal import builder as _builder - +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 6, + 31, + 0, + '', + 'opentelemetry/proto/common/v1/common.proto' +) # @@protoc_insertion_point(imports) _sym_db = _symbol_database.Default() -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile( - b'\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 = _descriptor_pool.Default().AddSerializedFile(b'\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') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages( - DESCRIPTOR, "opentelemetry.proto.common.v1.common_pb2", _globals -) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'opentelemetry.proto.common.v1.common_pb2', _globals) if not _descriptor._USE_C_DESCRIPTORS: - _globals["DESCRIPTOR"]._loaded_options = None - _globals["DESCRIPTOR"]._serialized_options = ( - b"\n io.opentelemetry.proto.common.v1B\013CommonProtoP\001Z(go.opentelemetry.io/proto/otlp/common/v1\252\002\035OpenTelemetry.Proto.Common.V1" - ) - _globals["_ANYVALUE"]._serialized_start = 78 - _globals["_ANYVALUE"]._serialized_end = 346 - _globals["_ARRAYVALUE"]._serialized_start = 348 - _globals["_ARRAYVALUE"]._serialized_end = 417 - _globals["_KEYVALUELIST"]._serialized_start = 419 - _globals["_KEYVALUELIST"]._serialized_end = 490 - _globals["_KEYVALUE"]._serialized_start = 492 - _globals["_KEYVALUE"]._serialized_end = 571 - _globals["_INSTRUMENTATIONSCOPE"]._serialized_start = 574 - _globals["_INSTRUMENTATIONSCOPE"]._serialized_end = 722 + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'\n io.opentelemetry.proto.common.v1B\013CommonProtoP\001Z(go.opentelemetry.io/proto/otlp/common/v1\252\002\035OpenTelemetry.Proto.Common.V1' + _globals['_ANYVALUE']._serialized_start=78 + _globals['_ANYVALUE']._serialized_end=346 + _globals['_ARRAYVALUE']._serialized_start=348 + _globals['_ARRAYVALUE']._serialized_end=417 + _globals['_KEYVALUELIST']._serialized_start=419 + _globals['_KEYVALUELIST']._serialized_end=490 + _globals['_KEYVALUE']._serialized_start=492 + _globals['_KEYVALUE']._serialized_end=571 + _globals['_INSTRUMENTATIONSCOPE']._serialized_start=574 + _globals['_INSTRUMENTATIONSCOPE']._serialized_end=722 # @@protoc_insertion_point(module_scope) diff --git a/opentelemetry-proto/src/opentelemetry/proto/common/v1/common_pb2.pyi b/opentelemetry-proto/src/opentelemetry/proto/common/v1/common_pb2.pyi index e4dd2e4e8d7..6a2c6ad1f44 100644 --- a/opentelemetry-proto/src/opentelemetry/proto/common/v1/common_pb2.pyi +++ b/opentelemetry-proto/src/opentelemetry/proto/common/v1/common_pb2.pyi @@ -21,13 +21,11 @@ import collections.abc import google.protobuf.descriptor import google.protobuf.internal.containers import google.protobuf.message -import sys - -import typing as typing_extensions +import typing DESCRIPTOR: google.protobuf.descriptor.FileDescriptor -@typing_extensions.final +@typing.final class AnyValue(google.protobuf.message.Message): """AnyValue is used to represent any type of attribute value. AnyValue may contain a primitive value such as a string or integer or it may contain an arbitrary nested @@ -47,11 +45,11 @@ class AnyValue(google.protobuf.message.Message): bool_value: builtins.bool int_value: builtins.int double_value: builtins.float + bytes_value: builtins.bytes @property def array_value(self) -> global___ArrayValue: ... @property def kvlist_value(self) -> global___KeyValueList: ... - bytes_value: builtins.bytes def __init__( self, *, @@ -63,66 +61,13 @@ class AnyValue(google.protobuf.message.Message): kvlist_value: global___KeyValueList | None = ..., bytes_value: builtins.bytes = ..., ) -> None: ... - def HasField( - self, - field_name: typing_extensions.Literal[ - "array_value", - b"array_value", - "bool_value", - b"bool_value", - "bytes_value", - b"bytes_value", - "double_value", - b"double_value", - "int_value", - b"int_value", - "kvlist_value", - b"kvlist_value", - "string_value", - b"string_value", - "value", - b"value", - ], - ) -> builtins.bool: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "array_value", - b"array_value", - "bool_value", - b"bool_value", - "bytes_value", - b"bytes_value", - "double_value", - b"double_value", - "int_value", - b"int_value", - "kvlist_value", - b"kvlist_value", - "string_value", - b"string_value", - "value", - b"value", - ], - ) -> None: ... - def WhichOneof( - self, oneof_group: typing_extensions.Literal["value", b"value"] - ) -> ( - typing_extensions.Literal[ - "string_value", - "bool_value", - "int_value", - "double_value", - "array_value", - "kvlist_value", - "bytes_value", - ] - | None - ): ... + def HasField(self, field_name: typing.Literal["array_value", b"array_value", "bool_value", b"bool_value", "bytes_value", b"bytes_value", "double_value", b"double_value", "int_value", b"int_value", "kvlist_value", b"kvlist_value", "string_value", b"string_value", "value", b"value"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["array_value", b"array_value", "bool_value", b"bool_value", "bytes_value", b"bytes_value", "double_value", b"double_value", "int_value", b"int_value", "kvlist_value", b"kvlist_value", "string_value", b"string_value", "value", b"value"]) -> None: ... + def WhichOneof(self, oneof_group: typing.Literal["value", b"value"]) -> typing.Literal["string_value", "bool_value", "int_value", "double_value", "array_value", "kvlist_value", "bytes_value"] | None: ... global___AnyValue = AnyValue -@typing_extensions.final +@typing.final class ArrayValue(google.protobuf.message.Message): """ArrayValue is a list of AnyValue messages. We need ArrayValue as a message since oneof in AnyValue does not allow repeated fields. @@ -132,11 +77,7 @@ class ArrayValue(google.protobuf.message.Message): VALUES_FIELD_NUMBER: builtins.int @property - def values( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - global___AnyValue - ]: + def values(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AnyValue]: """Array of values. The array may be empty (contain 0 elements).""" def __init__( @@ -144,13 +85,11 @@ class ArrayValue(google.protobuf.message.Message): *, values: collections.abc.Iterable[global___AnyValue] | None = ..., ) -> None: ... - def ClearField( - self, field_name: typing_extensions.Literal["values", b"values"] - ) -> None: ... + def ClearField(self, field_name: typing.Literal["values", b"values"]) -> None: ... global___ArrayValue = ArrayValue -@typing_extensions.final +@typing.final class KeyValueList(google.protobuf.message.Message): """KeyValueList is a list of KeyValue messages. We need KeyValueList as a message since `oneof` in AnyValue does not allow repeated fields. Everywhere else where we need @@ -163,11 +102,7 @@ class KeyValueList(google.protobuf.message.Message): VALUES_FIELD_NUMBER: builtins.int @property - def values( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - global___KeyValue - ]: + def values(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___KeyValue]: """A collection of key/value pairs of key-value pairs. The list may be empty (may contain 0 elements). The keys MUST be unique (it is not allowed to have more than one @@ -179,13 +114,11 @@ class KeyValueList(google.protobuf.message.Message): *, values: collections.abc.Iterable[global___KeyValue] | None = ..., ) -> None: ... - def ClearField( - self, field_name: typing_extensions.Literal["values", b"values"] - ) -> None: ... + def ClearField(self, field_name: typing.Literal["values", b"values"]) -> None: ... global___KeyValueList = KeyValueList -@typing_extensions.final +@typing.final class KeyValue(google.protobuf.message.Message): """KeyValue is a key-value pair that is used to store Span attributes, Link attributes, etc. @@ -204,19 +137,12 @@ class KeyValue(google.protobuf.message.Message): key: builtins.str = ..., value: global___AnyValue | None = ..., ) -> None: ... - def HasField( - self, field_name: typing_extensions.Literal["value", b"value"] - ) -> builtins.bool: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "key", b"key", "value", b"value" - ], - ) -> None: ... + def HasField(self, field_name: typing.Literal["value", b"value"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["key", b"key", "value", b"value"]) -> None: ... global___KeyValue = KeyValue -@typing_extensions.final +@typing.final class InstrumentationScope(google.protobuf.message.Message): """InstrumentationScope is a message representing the instrumentation scope information such as the fully qualified name and version. @@ -231,17 +157,14 @@ class InstrumentationScope(google.protobuf.message.Message): name: builtins.str """An empty instrumentation scope name means the name is unknown.""" version: builtins.str + dropped_attributes_count: builtins.int @property - def attributes( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - global___KeyValue - ]: + def attributes(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___KeyValue]: """Additional attributes that describe the scope. [Optional]. Attribute keys MUST be unique (it is not allowed to have more than one attribute with the same key). """ - dropped_attributes_count: builtins.int + def __init__( self, *, @@ -250,18 +173,6 @@ class InstrumentationScope(google.protobuf.message.Message): attributes: collections.abc.Iterable[global___KeyValue] | None = ..., dropped_attributes_count: builtins.int = ..., ) -> None: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "attributes", - b"attributes", - "dropped_attributes_count", - b"dropped_attributes_count", - "name", - b"name", - "version", - b"version", - ], - ) -> None: ... + def ClearField(self, field_name: typing.Literal["attributes", b"attributes", "dropped_attributes_count", b"dropped_attributes_count", "name", b"name", "version", b"version"]) -> None: ... global___InstrumentationScope = InstrumentationScope diff --git a/opentelemetry-proto/src/opentelemetry/proto/logs/v1/logs_pb2.py b/opentelemetry-proto/src/opentelemetry/proto/logs/v1/logs_pb2.py index 715a741a2c6..52eee5d0176 100644 --- a/opentelemetry-proto/src/opentelemetry/proto/logs/v1/logs_pb2.py +++ b/opentelemetry-proto/src/opentelemetry/proto/logs/v1/logs_pb2.py @@ -1,50 +1,49 @@ # -*- coding: utf-8 -*- # Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE # source: opentelemetry/proto/logs/v1/logs.proto -# Protobuf Python Version: 5.26.1 +# Protobuf Python Version: 6.31.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version from google.protobuf import symbol_database as _symbol_database from google.protobuf.internal import builder as _builder - +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 6, + 31, + 0, + '', + 'opentelemetry/proto/logs/v1/logs.proto' +) # @@protoc_insertion_point(imports) _sym_db = _symbol_database.Default() -from opentelemetry.proto.common.v1 import ( - common_pb2 as opentelemetry_dot_proto_dot_common_dot_v1_dot_common__pb2, -) -from opentelemetry.proto.resource.v1 import ( - resource_pb2 as opentelemetry_dot_proto_dot_resource_dot_v1_dot_resource__pb2, -) +from opentelemetry.proto.common.v1 import common_pb2 as opentelemetry_dot_proto_dot_common_dot_v1_dot_common__pb2 +from opentelemetry.proto.resource.v1 import resource_pb2 as opentelemetry_dot_proto_dot_resource_dot_v1_dot_resource__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile( - b'\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 = _descriptor_pool.Default().AddSerializedFile(b'\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') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages( - DESCRIPTOR, "opentelemetry.proto.logs.v1.logs_pb2", _globals -) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'opentelemetry.proto.logs.v1.logs_pb2', _globals) if not _descriptor._USE_C_DESCRIPTORS: - _globals["DESCRIPTOR"]._loaded_options = None - _globals["DESCRIPTOR"]._serialized_options = ( - b"\n\036io.opentelemetry.proto.logs.v1B\tLogsProtoP\001Z&go.opentelemetry.io/proto/otlp/logs/v1\252\002\033OpenTelemetry.Proto.Logs.V1" - ) - _globals["_SEVERITYNUMBER"]._serialized_start = 941 - _globals["_SEVERITYNUMBER"]._serialized_end = 1648 - _globals["_LOGRECORDFLAGS"]._serialized_start = 1650 - _globals["_LOGRECORDFLAGS"]._serialized_end = 1739 - _globals["_LOGSDATA"]._serialized_start = 163 - _globals["_LOGSDATA"]._serialized_end = 239 - _globals["_RESOURCELOGS"]._serialized_start = 242 - _globals["_RESOURCELOGS"]._serialized_end = 405 - _globals["_SCOPELOGS"]._serialized_start = 408 - _globals["_SCOPELOGS"]._serialized_end = 568 - _globals["_LOGRECORD"]._serialized_start = 571 - _globals["_LOGRECORD"]._serialized_end = 938 + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'\n\036io.opentelemetry.proto.logs.v1B\tLogsProtoP\001Z&go.opentelemetry.io/proto/otlp/logs/v1\252\002\033OpenTelemetry.Proto.Logs.V1' + _globals['_SEVERITYNUMBER']._serialized_start=941 + _globals['_SEVERITYNUMBER']._serialized_end=1648 + _globals['_LOGRECORDFLAGS']._serialized_start=1650 + _globals['_LOGRECORDFLAGS']._serialized_end=1739 + _globals['_LOGSDATA']._serialized_start=163 + _globals['_LOGSDATA']._serialized_end=239 + _globals['_RESOURCELOGS']._serialized_start=242 + _globals['_RESOURCELOGS']._serialized_end=405 + _globals['_SCOPELOGS']._serialized_start=408 + _globals['_SCOPELOGS']._serialized_end=568 + _globals['_LOGRECORD']._serialized_start=571 + _globals['_LOGRECORD']._serialized_end=938 # @@protoc_insertion_point(module_scope) diff --git a/opentelemetry-proto/src/opentelemetry/proto/logs/v1/logs_pb2.pyi b/opentelemetry-proto/src/opentelemetry/proto/logs/v1/logs_pb2.pyi index b0232c2b6b3..422c94ecd3f 100644 --- a/opentelemetry-proto/src/opentelemetry/proto/logs/v1/logs_pb2.pyi +++ b/opentelemetry-proto/src/opentelemetry/proto/logs/v1/logs_pb2.pyi @@ -38,12 +38,7 @@ class _SeverityNumber: ValueType = typing.NewType("ValueType", builtins.int) V: typing_extensions.TypeAlias = ValueType -class _SeverityNumberEnumTypeWrapper( - google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[ - _SeverityNumber.ValueType - ], - builtins.type, -): +class _SeverityNumberEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_SeverityNumber.ValueType], builtins.type): DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor SEVERITY_NUMBER_UNSPECIFIED: _SeverityNumber.ValueType # 0 """UNSPECIFIED is the default SeverityNumber, it MUST NOT be used.""" @@ -72,9 +67,7 @@ class _SeverityNumberEnumTypeWrapper( SEVERITY_NUMBER_FATAL3: _SeverityNumber.ValueType # 23 SEVERITY_NUMBER_FATAL4: _SeverityNumber.ValueType # 24 -class SeverityNumber( - _SeverityNumber, metaclass=_SeverityNumberEnumTypeWrapper -): +class SeverityNumber(_SeverityNumber, metaclass=_SeverityNumberEnumTypeWrapper): """Possible values for LogRecord.SeverityNumber.""" SEVERITY_NUMBER_UNSPECIFIED: SeverityNumber.ValueType # 0 @@ -109,12 +102,7 @@ class _LogRecordFlags: ValueType = typing.NewType("ValueType", builtins.int) V: typing_extensions.TypeAlias = ValueType -class _LogRecordFlagsEnumTypeWrapper( - google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[ - _LogRecordFlags.ValueType - ], - builtins.type, -): +class _LogRecordFlagsEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_LogRecordFlags.ValueType], builtins.type): DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor LOG_RECORD_FLAGS_DO_NOT_USE: _LogRecordFlags.ValueType # 0 """The zero value for the enum. Should not be used for comparisons. @@ -123,9 +111,7 @@ class _LogRecordFlagsEnumTypeWrapper( LOG_RECORD_FLAGS_TRACE_FLAGS_MASK: _LogRecordFlags.ValueType # 255 """Bits 0-7 are used for trace flags.""" -class LogRecordFlags( - _LogRecordFlags, metaclass=_LogRecordFlagsEnumTypeWrapper -): +class LogRecordFlags(_LogRecordFlags, metaclass=_LogRecordFlagsEnumTypeWrapper): """LogRecordFlags represents constants used to interpret the LogRecord.flags field, which is protobuf 'fixed32' type and is to be used as bit-fields. Each non-zero value defined in this enum is @@ -143,7 +129,7 @@ LOG_RECORD_FLAGS_TRACE_FLAGS_MASK: LogRecordFlags.ValueType # 255 """Bits 0-7 are used for trace flags.""" global___LogRecordFlags = LogRecordFlags -@typing_extensions.final +@typing.final class LogsData(google.protobuf.message.Message): """LogsData represents the logs data that can be stored in a persistent storage, OR can be embedded by other protocols that transfer OTLP logs data but do not @@ -161,11 +147,7 @@ class LogsData(google.protobuf.message.Message): RESOURCE_LOGS_FIELD_NUMBER: builtins.int @property - def resource_logs( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - global___ResourceLogs - ]: + def resource_logs(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ResourceLogs]: """An array of ResourceLogs. For data coming from a single resource this array will typically contain one element. Intermediary nodes that receive data from multiple origins @@ -176,20 +158,13 @@ class LogsData(google.protobuf.message.Message): def __init__( self, *, - resource_logs: ( - collections.abc.Iterable[global___ResourceLogs] | None - ) = ..., - ) -> None: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "resource_logs", b"resource_logs" - ], + resource_logs: collections.abc.Iterable[global___ResourceLogs] | None = ..., ) -> None: ... + def ClearField(self, field_name: typing.Literal["resource_logs", b"resource_logs"]) -> None: ... global___LogsData = LogsData -@typing_extensions.final +@typing.final class ResourceLogs(google.protobuf.message.Message): """A collection of ScopeLogs from a Resource.""" @@ -198,21 +173,6 @@ class ResourceLogs(google.protobuf.message.Message): RESOURCE_FIELD_NUMBER: builtins.int SCOPE_LOGS_FIELD_NUMBER: builtins.int SCHEMA_URL_FIELD_NUMBER: builtins.int - @property - def resource( - self, - ) -> opentelemetry.proto.resource.v1.resource_pb2.Resource: - """The resource for the logs in this message. - If this field is not set then resource info is unknown. - """ - - @property - def scope_logs( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - global___ScopeLogs - ]: - """A list of ScopeLogs that originate from a resource.""" schema_url: builtins.str """The Schema URL, if known. This is the identifier of the Schema that the resource data is recorded in. To learn more about Schema URL see @@ -220,33 +180,29 @@ class ResourceLogs(google.protobuf.message.Message): This schema_url applies to the data in the "resource" field. It does not apply to the data in the "scope_logs" field which have their own schema_url field. """ + @property + def resource(self) -> opentelemetry.proto.resource.v1.resource_pb2.Resource: + """The resource for the logs in this message. + If this field is not set then resource info is unknown. + """ + + @property + def scope_logs(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ScopeLogs]: + """A list of ScopeLogs that originate from a resource.""" + def __init__( self, *, - resource: ( - opentelemetry.proto.resource.v1.resource_pb2.Resource | None - ) = ..., + resource: opentelemetry.proto.resource.v1.resource_pb2.Resource | None = ..., scope_logs: collections.abc.Iterable[global___ScopeLogs] | None = ..., schema_url: builtins.str = ..., ) -> None: ... - def HasField( - self, field_name: typing_extensions.Literal["resource", b"resource"] - ) -> builtins.bool: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "resource", - b"resource", - "schema_url", - b"schema_url", - "scope_logs", - b"scope_logs", - ], - ) -> None: ... + def HasField(self, field_name: typing.Literal["resource", b"resource"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["resource", b"resource", "schema_url", b"schema_url", "scope_logs", b"scope_logs"]) -> None: ... global___ResourceLogs = ResourceLogs -@typing_extensions.final +@typing.final class ScopeLogs(google.protobuf.message.Message): """A collection of Logs produced by a Scope.""" @@ -255,56 +211,36 @@ class ScopeLogs(google.protobuf.message.Message): SCOPE_FIELD_NUMBER: builtins.int LOG_RECORDS_FIELD_NUMBER: builtins.int SCHEMA_URL_FIELD_NUMBER: builtins.int + schema_url: builtins.str + """The Schema URL, if known. This is the identifier of the Schema that the log data + is recorded in. To learn more about Schema URL see + https://opentelemetry.io/docs/specs/otel/schemas/#schema-url + This schema_url applies to all logs in the "logs" field. + """ @property - def scope( - self, - ) -> opentelemetry.proto.common.v1.common_pb2.InstrumentationScope: + def scope(self) -> opentelemetry.proto.common.v1.common_pb2.InstrumentationScope: """The instrumentation scope information for the logs in this message. Semantically when InstrumentationScope isn't set, it is equivalent with an empty instrumentation scope name (unknown). """ @property - def log_records( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - global___LogRecord - ]: + def log_records(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___LogRecord]: """A list of log records.""" - schema_url: builtins.str - """The Schema URL, if known. This is the identifier of the Schema that the log data - is recorded in. To learn more about Schema URL see - https://opentelemetry.io/docs/specs/otel/schemas/#schema-url - This schema_url applies to all logs in the "logs" field. - """ + def __init__( self, *, - scope: ( - opentelemetry.proto.common.v1.common_pb2.InstrumentationScope - | None - ) = ..., + scope: opentelemetry.proto.common.v1.common_pb2.InstrumentationScope | None = ..., log_records: collections.abc.Iterable[global___LogRecord] | None = ..., schema_url: builtins.str = ..., ) -> None: ... - def HasField( - self, field_name: typing_extensions.Literal["scope", b"scope"] - ) -> builtins.bool: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "log_records", - b"log_records", - "schema_url", - b"schema_url", - "scope", - b"scope", - ], - ) -> None: ... + def HasField(self, field_name: typing.Literal["scope", b"scope"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["log_records", b"log_records", "schema_url", b"schema_url", "scope", b"scope"]) -> None: ... global___ScopeLogs = ScopeLogs -@typing_extensions.final +@typing.final class LogRecord(google.protobuf.message.Message): """A log record according to OpenTelemetry Log Data Model: https://github.com/open-telemetry/oteps/blob/main/text/logs/0097-log-data-model.md @@ -352,23 +288,6 @@ class LogRecord(google.protobuf.message.Message): """The severity text (also known as log level). The original string representation as it is known at the source. [Optional]. """ - @property - def body(self) -> opentelemetry.proto.common.v1.common_pb2.AnyValue: - """A value containing the body of the log record. Can be for example a human-readable - string message (including multi-line) describing the event in a free form or it can - be a structured data composed of arrays and maps of other values. [Optional]. - """ - - @property - def attributes( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - opentelemetry.proto.common.v1.common_pb2.KeyValue - ]: - """Additional attributes that describe the specific event occurrence. [Optional]. - Attribute keys MUST be unique (it is not allowed to have more than one - attribute with the same key). - """ dropped_attributes_count: builtins.int flags: builtins.int """Flags, a bit field. 8 least significant bits are the trace flags as @@ -404,6 +323,20 @@ class LogRecord(google.protobuf.message.Message): - the field is not present, - the field contains an invalid value. """ + @property + def body(self) -> opentelemetry.proto.common.v1.common_pb2.AnyValue: + """A value containing the body of the log record. Can be for example a human-readable + string message (including multi-line) describing the event in a free form or it can + be a structured data composed of arrays and maps of other values. [Optional]. + """ + + @property + def attributes(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[opentelemetry.proto.common.v1.common_pb2.KeyValue]: + """Additional attributes that describe the specific event occurrence. [Optional]. + Attribute keys MUST be unique (it is not allowed to have more than one + attribute with the same key). + """ + def __init__( self, *, @@ -412,44 +345,13 @@ class LogRecord(google.protobuf.message.Message): severity_number: global___SeverityNumber.ValueType = ..., severity_text: builtins.str = ..., body: opentelemetry.proto.common.v1.common_pb2.AnyValue | None = ..., - attributes: ( - collections.abc.Iterable[ - opentelemetry.proto.common.v1.common_pb2.KeyValue - ] - | None - ) = ..., + attributes: collections.abc.Iterable[opentelemetry.proto.common.v1.common_pb2.KeyValue] | None = ..., dropped_attributes_count: builtins.int = ..., flags: builtins.int = ..., trace_id: builtins.bytes = ..., span_id: builtins.bytes = ..., ) -> None: ... - def HasField( - self, field_name: typing_extensions.Literal["body", b"body"] - ) -> builtins.bool: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "attributes", - b"attributes", - "body", - b"body", - "dropped_attributes_count", - b"dropped_attributes_count", - "flags", - b"flags", - "observed_time_unix_nano", - b"observed_time_unix_nano", - "severity_number", - b"severity_number", - "severity_text", - b"severity_text", - "span_id", - b"span_id", - "time_unix_nano", - b"time_unix_nano", - "trace_id", - b"trace_id", - ], - ) -> None: ... + def HasField(self, field_name: typing.Literal["body", b"body"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["attributes", b"attributes", "body", b"body", "dropped_attributes_count", b"dropped_attributes_count", "flags", b"flags", "observed_time_unix_nano", b"observed_time_unix_nano", "severity_number", b"severity_number", "severity_text", b"severity_text", "span_id", b"span_id", "time_unix_nano", b"time_unix_nano", "trace_id", b"trace_id"]) -> None: ... global___LogRecord = LogRecord diff --git a/opentelemetry-proto/src/opentelemetry/proto/metrics/v1/metrics_pb2.py b/opentelemetry-proto/src/opentelemetry/proto/metrics/v1/metrics_pb2.py index 98ed5c33f59..edbe5fb12d6 100644 --- a/opentelemetry-proto/src/opentelemetry/proto/metrics/v1/metrics_pb2.py +++ b/opentelemetry-proto/src/opentelemetry/proto/metrics/v1/metrics_pb2.py @@ -1,74 +1,73 @@ # -*- coding: utf-8 -*- # Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE # source: opentelemetry/proto/metrics/v1/metrics.proto -# Protobuf Python Version: 5.26.1 +# Protobuf Python Version: 6.31.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version from google.protobuf import symbol_database as _symbol_database from google.protobuf.internal import builder as _builder - +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 6, + 31, + 0, + '', + 'opentelemetry/proto/metrics/v1/metrics.proto' +) # @@protoc_insertion_point(imports) _sym_db = _symbol_database.Default() -from opentelemetry.proto.common.v1 import ( - common_pb2 as opentelemetry_dot_proto_dot_common_dot_v1_dot_common__pb2, -) -from opentelemetry.proto.resource.v1 import ( - resource_pb2 as opentelemetry_dot_proto_dot_resource_dot_v1_dot_resource__pb2, -) +from opentelemetry.proto.common.v1 import common_pb2 as opentelemetry_dot_proto_dot_common_dot_v1_dot_common__pb2 +from opentelemetry.proto.resource.v1 import resource_pb2 as opentelemetry_dot_proto_dot_resource_dot_v1_dot_resource__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile( - b'\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' -) +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\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') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages( - DESCRIPTOR, "opentelemetry.proto.metrics.v1.metrics_pb2", _globals -) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'opentelemetry.proto.metrics.v1.metrics_pb2', _globals) if not _descriptor._USE_C_DESCRIPTORS: - _globals["DESCRIPTOR"]._loaded_options = None - _globals["DESCRIPTOR"]._serialized_options = ( - b"\n!io.opentelemetry.proto.metrics.v1B\014MetricsProtoP\001Z)go.opentelemetry.io/proto/otlp/metrics/v1\252\002\036OpenTelemetry.Proto.Metrics.V1" - ) - _globals["_AGGREGATIONTEMPORALITY"]._serialized_start = 3546 - _globals["_AGGREGATIONTEMPORALITY"]._serialized_end = 3686 - _globals["_DATAPOINTFLAGS"]._serialized_start = 3688 - _globals["_DATAPOINTFLAGS"]._serialized_end = 3782 - _globals["_METRICSDATA"]._serialized_start = 172 - _globals["_METRICSDATA"]._serialized_end = 260 - _globals["_RESOURCEMETRICS"]._serialized_start = 263 - _globals["_RESOURCEMETRICS"]._serialized_end = 438 - _globals["_SCOPEMETRICS"]._serialized_start = 441 - _globals["_SCOPEMETRICS"]._serialized_end = 600 - _globals["_METRIC"]._serialized_start = 603 - _globals["_METRIC"]._serialized_end = 1064 - _globals["_GAUGE"]._serialized_start = 1066 - _globals["_GAUGE"]._serialized_end = 1143 - _globals["_SUM"]._serialized_start = 1146 - _globals["_SUM"]._serialized_end = 1332 - _globals["_HISTOGRAM"]._serialized_start = 1335 - _globals["_HISTOGRAM"]._serialized_end = 1508 - _globals["_EXPONENTIALHISTOGRAM"]._serialized_start = 1511 - _globals["_EXPONENTIALHISTOGRAM"]._serialized_end = 1706 - _globals["_SUMMARY"]._serialized_start = 1708 - _globals["_SUMMARY"]._serialized_end = 1788 - _globals["_NUMBERDATAPOINT"]._serialized_start = 1791 - _globals["_NUMBERDATAPOINT"]._serialized_end = 2053 - _globals["_HISTOGRAMDATAPOINT"]._serialized_start = 2056 - _globals["_HISTOGRAMDATAPOINT"]._serialized_end = 2414 - _globals["_EXPONENTIALHISTOGRAMDATAPOINT"]._serialized_start = 2417 - _globals["_EXPONENTIALHISTOGRAMDATAPOINT"]._serialized_end = 3019 - _globals["_EXPONENTIALHISTOGRAMDATAPOINT_BUCKETS"]._serialized_start = 2947 - _globals["_EXPONENTIALHISTOGRAMDATAPOINT_BUCKETS"]._serialized_end = 2995 - _globals["_SUMMARYDATAPOINT"]._serialized_start = 3022 - _globals["_SUMMARYDATAPOINT"]._serialized_end = 3347 - _globals["_SUMMARYDATAPOINT_VALUEATQUANTILE"]._serialized_start = 3291 - _globals["_SUMMARYDATAPOINT_VALUEATQUANTILE"]._serialized_end = 3341 - _globals["_EXEMPLAR"]._serialized_start = 3350 - _globals["_EXEMPLAR"]._serialized_end = 3543 + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'\n!io.opentelemetry.proto.metrics.v1B\014MetricsProtoP\001Z)go.opentelemetry.io/proto/otlp/metrics/v1\252\002\036OpenTelemetry.Proto.Metrics.V1' + _globals['_AGGREGATIONTEMPORALITY']._serialized_start=3546 + _globals['_AGGREGATIONTEMPORALITY']._serialized_end=3686 + _globals['_DATAPOINTFLAGS']._serialized_start=3688 + _globals['_DATAPOINTFLAGS']._serialized_end=3782 + _globals['_METRICSDATA']._serialized_start=172 + _globals['_METRICSDATA']._serialized_end=260 + _globals['_RESOURCEMETRICS']._serialized_start=263 + _globals['_RESOURCEMETRICS']._serialized_end=438 + _globals['_SCOPEMETRICS']._serialized_start=441 + _globals['_SCOPEMETRICS']._serialized_end=600 + _globals['_METRIC']._serialized_start=603 + _globals['_METRIC']._serialized_end=1064 + _globals['_GAUGE']._serialized_start=1066 + _globals['_GAUGE']._serialized_end=1143 + _globals['_SUM']._serialized_start=1146 + _globals['_SUM']._serialized_end=1332 + _globals['_HISTOGRAM']._serialized_start=1335 + _globals['_HISTOGRAM']._serialized_end=1508 + _globals['_EXPONENTIALHISTOGRAM']._serialized_start=1511 + _globals['_EXPONENTIALHISTOGRAM']._serialized_end=1706 + _globals['_SUMMARY']._serialized_start=1708 + _globals['_SUMMARY']._serialized_end=1788 + _globals['_NUMBERDATAPOINT']._serialized_start=1791 + _globals['_NUMBERDATAPOINT']._serialized_end=2053 + _globals['_HISTOGRAMDATAPOINT']._serialized_start=2056 + _globals['_HISTOGRAMDATAPOINT']._serialized_end=2414 + _globals['_EXPONENTIALHISTOGRAMDATAPOINT']._serialized_start=2417 + _globals['_EXPONENTIALHISTOGRAMDATAPOINT']._serialized_end=3019 + _globals['_EXPONENTIALHISTOGRAMDATAPOINT_BUCKETS']._serialized_start=2947 + _globals['_EXPONENTIALHISTOGRAMDATAPOINT_BUCKETS']._serialized_end=2995 + _globals['_SUMMARYDATAPOINT']._serialized_start=3022 + _globals['_SUMMARYDATAPOINT']._serialized_end=3347 + _globals['_SUMMARYDATAPOINT_VALUEATQUANTILE']._serialized_start=3291 + _globals['_SUMMARYDATAPOINT_VALUEATQUANTILE']._serialized_end=3341 + _globals['_EXEMPLAR']._serialized_start=3350 + _globals['_EXEMPLAR']._serialized_end=3543 # @@protoc_insertion_point(module_scope) diff --git a/opentelemetry-proto/src/opentelemetry/proto/metrics/v1/metrics_pb2.pyi b/opentelemetry-proto/src/opentelemetry/proto/metrics/v1/metrics_pb2.pyi index b3e3e4d04d9..3b59ec8e4a2 100644 --- a/opentelemetry-proto/src/opentelemetry/proto/metrics/v1/metrics_pb2.pyi +++ b/opentelemetry-proto/src/opentelemetry/proto/metrics/v1/metrics_pb2.pyi @@ -38,12 +38,7 @@ class _AggregationTemporality: ValueType = typing.NewType("ValueType", builtins.int) V: typing_extensions.TypeAlias = ValueType -class _AggregationTemporalityEnumTypeWrapper( - google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[ - _AggregationTemporality.ValueType - ], - builtins.type, -): +class _AggregationTemporalityEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_AggregationTemporality.ValueType], builtins.type): DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor AGGREGATION_TEMPORALITY_UNSPECIFIED: _AggregationTemporality.ValueType # 0 """UNSPECIFIED is the default AggregationTemporality, it MUST not be used.""" @@ -111,9 +106,7 @@ class _AggregationTemporalityEnumTypeWrapper( value was reset (e.g. Prometheus). """ -class AggregationTemporality( - _AggregationTemporality, metaclass=_AggregationTemporalityEnumTypeWrapper -): +class AggregationTemporality(_AggregationTemporality, metaclass=_AggregationTemporalityEnumTypeWrapper): """AggregationTemporality defines how a metric aggregator reports aggregated values. It describes how those values relate to the time interval over which they are aggregated. @@ -190,12 +183,7 @@ class _DataPointFlags: ValueType = typing.NewType("ValueType", builtins.int) V: typing_extensions.TypeAlias = ValueType -class _DataPointFlagsEnumTypeWrapper( - google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[ - _DataPointFlags.ValueType - ], - builtins.type, -): +class _DataPointFlagsEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_DataPointFlags.ValueType], builtins.type): DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor DATA_POINT_FLAGS_DO_NOT_USE: _DataPointFlags.ValueType # 0 """The zero value for the enum. Should not be used for comparisons. @@ -207,9 +195,7 @@ class _DataPointFlagsEnumTypeWrapper( for an equivalent to the Prometheus "staleness marker". """ -class DataPointFlags( - _DataPointFlags, metaclass=_DataPointFlagsEnumTypeWrapper -): +class DataPointFlags(_DataPointFlags, metaclass=_DataPointFlagsEnumTypeWrapper): """DataPointFlags is defined as a protobuf 'uint32' type and is to be used as a bit-field representing 32 distinct boolean flags. Each flag defined in this enum is a bit-mask. To test the presence of a single flag in the flags of @@ -229,7 +215,7 @@ for an equivalent to the Prometheus "staleness marker". """ global___DataPointFlags = DataPointFlags -@typing_extensions.final +@typing.final class MetricsData(google.protobuf.message.Message): """MetricsData represents the metrics data that can be stored in a persistent storage, OR can be embedded by other protocols that transfer OTLP metrics @@ -247,11 +233,7 @@ class MetricsData(google.protobuf.message.Message): RESOURCE_METRICS_FIELD_NUMBER: builtins.int @property - def resource_metrics( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - global___ResourceMetrics - ]: + def resource_metrics(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ResourceMetrics]: """An array of ResourceMetrics. For data coming from a single resource this array will typically contain one element. Intermediary nodes that receive data from multiple origins @@ -262,20 +244,13 @@ class MetricsData(google.protobuf.message.Message): def __init__( self, *, - resource_metrics: ( - collections.abc.Iterable[global___ResourceMetrics] | None - ) = ..., - ) -> None: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "resource_metrics", b"resource_metrics" - ], + resource_metrics: collections.abc.Iterable[global___ResourceMetrics] | None = ..., ) -> None: ... + def ClearField(self, field_name: typing.Literal["resource_metrics", b"resource_metrics"]) -> None: ... global___MetricsData = MetricsData -@typing_extensions.final +@typing.final class ResourceMetrics(google.protobuf.message.Message): """A collection of ScopeMetrics from a Resource.""" @@ -284,21 +259,6 @@ class ResourceMetrics(google.protobuf.message.Message): RESOURCE_FIELD_NUMBER: builtins.int SCOPE_METRICS_FIELD_NUMBER: builtins.int SCHEMA_URL_FIELD_NUMBER: builtins.int - @property - def resource( - self, - ) -> opentelemetry.proto.resource.v1.resource_pb2.Resource: - """The resource for the metrics in this message. - If this field is not set then no resource info is known. - """ - - @property - def scope_metrics( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - global___ScopeMetrics - ]: - """A list of metrics that originate from a resource.""" schema_url: builtins.str """The Schema URL, if known. This is the identifier of the Schema that the resource data is recorded in. To learn more about Schema URL see @@ -306,35 +266,29 @@ class ResourceMetrics(google.protobuf.message.Message): This schema_url applies to the data in the "resource" field. It does not apply to the data in the "scope_metrics" field which have their own schema_url field. """ + @property + def resource(self) -> opentelemetry.proto.resource.v1.resource_pb2.Resource: + """The resource for the metrics in this message. + If this field is not set then no resource info is known. + """ + + @property + def scope_metrics(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ScopeMetrics]: + """A list of metrics that originate from a resource.""" + def __init__( self, *, - resource: ( - opentelemetry.proto.resource.v1.resource_pb2.Resource | None - ) = ..., - scope_metrics: ( - collections.abc.Iterable[global___ScopeMetrics] | None - ) = ..., + resource: opentelemetry.proto.resource.v1.resource_pb2.Resource | None = ..., + scope_metrics: collections.abc.Iterable[global___ScopeMetrics] | None = ..., schema_url: builtins.str = ..., ) -> None: ... - def HasField( - self, field_name: typing_extensions.Literal["resource", b"resource"] - ) -> builtins.bool: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "resource", - b"resource", - "schema_url", - b"schema_url", - "scope_metrics", - b"scope_metrics", - ], - ) -> None: ... + def HasField(self, field_name: typing.Literal["resource", b"resource"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["resource", b"resource", "schema_url", b"schema_url", "scope_metrics", b"scope_metrics"]) -> None: ... global___ResourceMetrics = ResourceMetrics -@typing_extensions.final +@typing.final class ScopeMetrics(google.protobuf.message.Message): """A collection of Metrics produced by an Scope.""" @@ -343,56 +297,36 @@ class ScopeMetrics(google.protobuf.message.Message): SCOPE_FIELD_NUMBER: builtins.int METRICS_FIELD_NUMBER: builtins.int SCHEMA_URL_FIELD_NUMBER: builtins.int + schema_url: builtins.str + """The Schema URL, if known. This is the identifier of the Schema that the metric data + is recorded in. To learn more about Schema URL see + https://opentelemetry.io/docs/specs/otel/schemas/#schema-url + This schema_url applies to all metrics in the "metrics" field. + """ @property - def scope( - self, - ) -> opentelemetry.proto.common.v1.common_pb2.InstrumentationScope: + def scope(self) -> opentelemetry.proto.common.v1.common_pb2.InstrumentationScope: """The instrumentation scope information for the metrics in this message. Semantically when InstrumentationScope isn't set, it is equivalent with an empty instrumentation scope name (unknown). """ @property - def metrics( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - global___Metric - ]: + def metrics(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Metric]: """A list of metrics that originate from an instrumentation library.""" - schema_url: builtins.str - """The Schema URL, if known. This is the identifier of the Schema that the metric data - is recorded in. To learn more about Schema URL see - https://opentelemetry.io/docs/specs/otel/schemas/#schema-url - This schema_url applies to all metrics in the "metrics" field. - """ + def __init__( self, *, - scope: ( - opentelemetry.proto.common.v1.common_pb2.InstrumentationScope - | None - ) = ..., + scope: opentelemetry.proto.common.v1.common_pb2.InstrumentationScope | None = ..., metrics: collections.abc.Iterable[global___Metric] | None = ..., schema_url: builtins.str = ..., ) -> None: ... - def HasField( - self, field_name: typing_extensions.Literal["scope", b"scope"] - ) -> builtins.bool: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "metrics", - b"metrics", - "schema_url", - b"schema_url", - "scope", - b"scope", - ], - ) -> None: ... + def HasField(self, field_name: typing.Literal["scope", b"scope"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["metrics", b"metrics", "schema_url", b"schema_url", "scope", b"scope"]) -> None: ... global___ScopeMetrics = ScopeMetrics -@typing_extensions.final +@typing.final class Metric(google.protobuf.message.Message): """Defines a Metric which has one or more timeseries. The following is a brief summary of the Metric data model. For more details, see: @@ -511,11 +445,7 @@ class Metric(google.protobuf.message.Message): @property def summary(self) -> global___Summary: ... @property - def metadata( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - opentelemetry.proto.common.v1.common_pb2.KeyValue - ]: + def metadata(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[opentelemetry.proto.common.v1.common_pb2.KeyValue]: """Additional metadata attributes that describe the metric. [Optional]. Attributes are non-identifying. Consumers SHOULD NOT need to be aware of these attributes. @@ -536,67 +466,15 @@ class Metric(google.protobuf.message.Message): histogram: global___Histogram | None = ..., exponential_histogram: global___ExponentialHistogram | None = ..., summary: global___Summary | None = ..., - metadata: ( - collections.abc.Iterable[ - opentelemetry.proto.common.v1.common_pb2.KeyValue - ] - | None - ) = ..., + metadata: collections.abc.Iterable[opentelemetry.proto.common.v1.common_pb2.KeyValue] | None = ..., ) -> None: ... - def HasField( - self, - field_name: typing_extensions.Literal[ - "data", - b"data", - "exponential_histogram", - b"exponential_histogram", - "gauge", - b"gauge", - "histogram", - b"histogram", - "sum", - b"sum", - "summary", - b"summary", - ], - ) -> builtins.bool: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "data", - b"data", - "description", - b"description", - "exponential_histogram", - b"exponential_histogram", - "gauge", - b"gauge", - "histogram", - b"histogram", - "metadata", - b"metadata", - "name", - b"name", - "sum", - b"sum", - "summary", - b"summary", - "unit", - b"unit", - ], - ) -> None: ... - def WhichOneof( - self, oneof_group: typing_extensions.Literal["data", b"data"] - ) -> ( - typing_extensions.Literal[ - "gauge", "sum", "histogram", "exponential_histogram", "summary" - ] - | None - ): ... + def HasField(self, field_name: typing.Literal["data", b"data", "exponential_histogram", b"exponential_histogram", "gauge", b"gauge", "histogram", b"histogram", "sum", b"sum", "summary", b"summary"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["data", b"data", "description", b"description", "exponential_histogram", b"exponential_histogram", "gauge", b"gauge", "histogram", b"histogram", "metadata", b"metadata", "name", b"name", "sum", b"sum", "summary", b"summary", "unit", b"unit"]) -> None: ... + def WhichOneof(self, oneof_group: typing.Literal["data", b"data"]) -> typing.Literal["gauge", "sum", "histogram", "exponential_histogram", "summary"] | None: ... global___Metric = Metric -@typing_extensions.final +@typing.final class Gauge(google.protobuf.message.Message): """Gauge represents the type of a scalar metric that always exports the "current value" for every data point. It should be used for an "unknown" @@ -613,26 +491,17 @@ class Gauge(google.protobuf.message.Message): DATA_POINTS_FIELD_NUMBER: builtins.int @property - def data_points( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - global___NumberDataPoint - ]: ... + def data_points(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___NumberDataPoint]: ... def __init__( self, *, - data_points: ( - collections.abc.Iterable[global___NumberDataPoint] | None - ) = ..., - ) -> None: ... - def ClearField( - self, - field_name: typing_extensions.Literal["data_points", b"data_points"], + data_points: collections.abc.Iterable[global___NumberDataPoint] | None = ..., ) -> None: ... + def ClearField(self, field_name: typing.Literal["data_points", b"data_points"]) -> None: ... global___Gauge = Gauge -@typing_extensions.final +@typing.final class Sum(google.protobuf.message.Message): """Sum represents the type of a scalar metric that is calculated as a sum of all reported measurements over a time interval. @@ -643,42 +512,26 @@ class Sum(google.protobuf.message.Message): DATA_POINTS_FIELD_NUMBER: builtins.int AGGREGATION_TEMPORALITY_FIELD_NUMBER: builtins.int IS_MONOTONIC_FIELD_NUMBER: builtins.int - @property - def data_points( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - global___NumberDataPoint - ]: ... aggregation_temporality: global___AggregationTemporality.ValueType """aggregation_temporality describes if the aggregator reports delta changes since last report time, or cumulative changes since a fixed start time. """ is_monotonic: builtins.bool """If "true" means that the sum is monotonic.""" + @property + def data_points(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___NumberDataPoint]: ... def __init__( self, *, - data_points: ( - collections.abc.Iterable[global___NumberDataPoint] | None - ) = ..., + data_points: collections.abc.Iterable[global___NumberDataPoint] | None = ..., aggregation_temporality: global___AggregationTemporality.ValueType = ..., is_monotonic: builtins.bool = ..., ) -> None: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "aggregation_temporality", - b"aggregation_temporality", - "data_points", - b"data_points", - "is_monotonic", - b"is_monotonic", - ], - ) -> None: ... + def ClearField(self, field_name: typing.Literal["aggregation_temporality", b"aggregation_temporality", "data_points", b"data_points", "is_monotonic", b"is_monotonic"]) -> None: ... global___Sum = Sum -@typing_extensions.final +@typing.final class Histogram(google.protobuf.message.Message): """Histogram represents the type of a metric that is calculated by aggregating as a Histogram of all reported measurements over a time interval. @@ -688,37 +541,23 @@ class Histogram(google.protobuf.message.Message): DATA_POINTS_FIELD_NUMBER: builtins.int AGGREGATION_TEMPORALITY_FIELD_NUMBER: builtins.int - @property - def data_points( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - global___HistogramDataPoint - ]: ... aggregation_temporality: global___AggregationTemporality.ValueType """aggregation_temporality describes if the aggregator reports delta changes since last report time, or cumulative changes since a fixed start time. """ + @property + def data_points(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___HistogramDataPoint]: ... def __init__( self, *, - data_points: ( - collections.abc.Iterable[global___HistogramDataPoint] | None - ) = ..., + data_points: collections.abc.Iterable[global___HistogramDataPoint] | None = ..., aggregation_temporality: global___AggregationTemporality.ValueType = ..., ) -> None: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "aggregation_temporality", - b"aggregation_temporality", - "data_points", - b"data_points", - ], - ) -> None: ... + def ClearField(self, field_name: typing.Literal["aggregation_temporality", b"aggregation_temporality", "data_points", b"data_points"]) -> None: ... global___Histogram = Histogram -@typing_extensions.final +@typing.final class ExponentialHistogram(google.protobuf.message.Message): """ExponentialHistogram represents the type of a metric that is calculated by aggregating as a ExponentialHistogram of all reported double measurements over a time interval. @@ -728,38 +567,23 @@ class ExponentialHistogram(google.protobuf.message.Message): DATA_POINTS_FIELD_NUMBER: builtins.int AGGREGATION_TEMPORALITY_FIELD_NUMBER: builtins.int - @property - def data_points( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - global___ExponentialHistogramDataPoint - ]: ... aggregation_temporality: global___AggregationTemporality.ValueType """aggregation_temporality describes if the aggregator reports delta changes since last report time, or cumulative changes since a fixed start time. """ + @property + def data_points(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ExponentialHistogramDataPoint]: ... def __init__( self, *, - data_points: ( - collections.abc.Iterable[global___ExponentialHistogramDataPoint] - | None - ) = ..., + data_points: collections.abc.Iterable[global___ExponentialHistogramDataPoint] | None = ..., aggregation_temporality: global___AggregationTemporality.ValueType = ..., ) -> None: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "aggregation_temporality", - b"aggregation_temporality", - "data_points", - b"data_points", - ], - ) -> None: ... + def ClearField(self, field_name: typing.Literal["aggregation_temporality", b"aggregation_temporality", "data_points", b"data_points"]) -> None: ... global___ExponentialHistogram = ExponentialHistogram -@typing_extensions.final +@typing.final class Summary(google.protobuf.message.Message): """Summary metric data are used to convey quantile summaries, a Prometheus (see: https://prometheus.io/docs/concepts/metric_types/#summary) @@ -773,26 +597,17 @@ class Summary(google.protobuf.message.Message): DATA_POINTS_FIELD_NUMBER: builtins.int @property - def data_points( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - global___SummaryDataPoint - ]: ... + def data_points(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___SummaryDataPoint]: ... def __init__( self, *, - data_points: ( - collections.abc.Iterable[global___SummaryDataPoint] | None - ) = ..., - ) -> None: ... - def ClearField( - self, - field_name: typing_extensions.Literal["data_points", b"data_points"], + data_points: collections.abc.Iterable[global___SummaryDataPoint] | None = ..., ) -> None: ... + def ClearField(self, field_name: typing.Literal["data_points", b"data_points"]) -> None: ... global___Summary = Summary -@typing_extensions.final +@typing.final class NumberDataPoint(google.protobuf.message.Message): """NumberDataPoint is a single data point in a timeseries that describes the time-varying scalar value of a metric. @@ -807,17 +622,6 @@ class NumberDataPoint(google.protobuf.message.Message): AS_INT_FIELD_NUMBER: builtins.int EXEMPLARS_FIELD_NUMBER: builtins.int FLAGS_FIELD_NUMBER: builtins.int - @property - def attributes( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - opentelemetry.proto.common.v1.common_pb2.KeyValue - ]: - """The set of key/value pairs that uniquely identify the timeseries from - where this point belongs. The list may be empty (may contain 0 elements). - Attribute keys MUST be unique (it is not allowed to have more than one - attribute with the same key). - """ start_time_unix_nano: builtins.int """StartTimeUnixNano is optional but strongly encouraged, see the the detailed comments above Metric. @@ -833,28 +637,28 @@ class NumberDataPoint(google.protobuf.message.Message): """ as_double: builtins.float as_int: builtins.int - @property - def exemplars( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - global___Exemplar - ]: - """(Optional) List of exemplars collected from - measurements that were used to form the data point - """ flags: builtins.int """Flags that apply to this specific data point. See DataPointFlags for the available flags and their meaning. """ + @property + def attributes(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[opentelemetry.proto.common.v1.common_pb2.KeyValue]: + """The set of key/value pairs that uniquely identify the timeseries from + where this point belongs. The list may be empty (may contain 0 elements). + Attribute keys MUST be unique (it is not allowed to have more than one + attribute with the same key). + """ + + @property + def exemplars(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Exemplar]: + """(Optional) List of exemplars collected from + measurements that were used to form the data point + """ + def __init__( self, *, - attributes: ( - collections.abc.Iterable[ - opentelemetry.proto.common.v1.common_pb2.KeyValue - ] - | None - ) = ..., + attributes: collections.abc.Iterable[opentelemetry.proto.common.v1.common_pb2.KeyValue] | None = ..., start_time_unix_nano: builtins.int = ..., time_unix_nano: builtins.int = ..., as_double: builtins.float = ..., @@ -862,40 +666,13 @@ class NumberDataPoint(google.protobuf.message.Message): exemplars: collections.abc.Iterable[global___Exemplar] | None = ..., flags: builtins.int = ..., ) -> None: ... - def HasField( - self, - field_name: typing_extensions.Literal[ - "as_double", b"as_double", "as_int", b"as_int", "value", b"value" - ], - ) -> builtins.bool: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "as_double", - b"as_double", - "as_int", - b"as_int", - "attributes", - b"attributes", - "exemplars", - b"exemplars", - "flags", - b"flags", - "start_time_unix_nano", - b"start_time_unix_nano", - "time_unix_nano", - b"time_unix_nano", - "value", - b"value", - ], - ) -> None: ... - def WhichOneof( - self, oneof_group: typing_extensions.Literal["value", b"value"] - ) -> typing_extensions.Literal["as_double", "as_int"] | None: ... + def HasField(self, field_name: typing.Literal["as_double", b"as_double", "as_int", b"as_int", "value", b"value"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["as_double", b"as_double", "as_int", b"as_int", "attributes", b"attributes", "exemplars", b"exemplars", "flags", b"flags", "start_time_unix_nano", b"start_time_unix_nano", "time_unix_nano", b"time_unix_nano", "value", b"value"]) -> None: ... + def WhichOneof(self, oneof_group: typing.Literal["value", b"value"]) -> typing.Literal["as_double", "as_int"] | None: ... global___NumberDataPoint = NumberDataPoint -@typing_extensions.final +@typing.final class HistogramDataPoint(google.protobuf.message.Message): """HistogramDataPoint is a single data point in a timeseries that describes the time-varying values of a Histogram. A Histogram contains summary statistics @@ -922,17 +699,6 @@ class HistogramDataPoint(google.protobuf.message.Message): FLAGS_FIELD_NUMBER: builtins.int MIN_FIELD_NUMBER: builtins.int MAX_FIELD_NUMBER: builtins.int - @property - def attributes( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - opentelemetry.proto.common.v1.common_pb2.KeyValue - ]: - """The set of key/value pairs that uniquely identify the timeseries from - where this point belongs. The list may be empty (may contain 0 elements). - Attribute keys MUST be unique (it is not allowed to have more than one - attribute with the same key). - """ start_time_unix_nano: builtins.int """StartTimeUnixNano is optional but strongly encouraged, see the the detailed comments above Metric. @@ -959,14 +725,26 @@ class HistogramDataPoint(google.protobuf.message.Message): events, and is assumed to be monotonic over the values of these events. Negative events *can* be recorded, but sum should not be filled out when doing so. This is specifically to enforce compatibility w/ OpenMetrics, - see: https://github.com/prometheus/OpenMetrics/blob/v1.0.0/specification/OpenMetrics.md#histogram + see: https://github.com/OpenObservability/OpenMetrics/blob/main/specification/OpenMetrics.md#histogram + """ + flags: builtins.int + """Flags that apply to this specific data point. See DataPointFlags + for the available flags and their meaning. """ + min: builtins.float + """min is the minimum value over (start_time, end_time].""" + max: builtins.float + """max is the maximum value over (start_time, end_time].""" @property - def bucket_counts( - self, - ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[ - builtins.int - ]: + def attributes(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[opentelemetry.proto.common.v1.common_pb2.KeyValue]: + """The set of key/value pairs that uniquely identify the timeseries from + where this point belongs. The list may be empty (may contain 0 elements). + Attribute keys MUST be unique (it is not allowed to have more than one + attribute with the same key). + """ + + @property + def bucket_counts(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.int]: """bucket_counts is an optional field contains the count values of histogram for each bucket. @@ -977,11 +755,7 @@ class HistogramDataPoint(google.protobuf.message.Message): """ @property - def explicit_bounds( - self, - ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[ - builtins.float - ]: + def explicit_bounds(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.float]: """explicit_bounds specifies buckets with explicitly defined bounds for values. The boundaries for bucket at index i are: @@ -998,31 +772,15 @@ class HistogramDataPoint(google.protobuf.message.Message): """ @property - def exemplars( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - global___Exemplar - ]: + def exemplars(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Exemplar]: """(Optional) List of exemplars collected from measurements that were used to form the data point """ - flags: builtins.int - """Flags that apply to this specific data point. See DataPointFlags - for the available flags and their meaning. - """ - min: builtins.float - """min is the minimum value over (start_time, end_time].""" - max: builtins.float - """max is the maximum value over (start_time, end_time].""" + def __init__( self, *, - attributes: ( - collections.abc.Iterable[ - opentelemetry.proto.common.v1.common_pb2.KeyValue - ] - | None - ) = ..., + attributes: collections.abc.Iterable[opentelemetry.proto.common.v1.common_pb2.KeyValue] | None = ..., start_time_unix_nano: builtins.int = ..., time_unix_nano: builtins.int = ..., count: builtins.int = ..., @@ -1034,72 +792,18 @@ class HistogramDataPoint(google.protobuf.message.Message): min: builtins.float | None = ..., max: builtins.float | None = ..., ) -> None: ... - def HasField( - self, - field_name: typing_extensions.Literal[ - "_max", - b"_max", - "_min", - b"_min", - "_sum", - b"_sum", - "max", - b"max", - "min", - b"min", - "sum", - b"sum", - ], - ) -> builtins.bool: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "_max", - b"_max", - "_min", - b"_min", - "_sum", - b"_sum", - "attributes", - b"attributes", - "bucket_counts", - b"bucket_counts", - "count", - b"count", - "exemplars", - b"exemplars", - "explicit_bounds", - b"explicit_bounds", - "flags", - b"flags", - "max", - b"max", - "min", - b"min", - "start_time_unix_nano", - b"start_time_unix_nano", - "sum", - b"sum", - "time_unix_nano", - b"time_unix_nano", - ], - ) -> None: ... + def HasField(self, field_name: typing.Literal["_max", b"_max", "_min", b"_min", "_sum", b"_sum", "max", b"max", "min", b"min", "sum", b"sum"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["_max", b"_max", "_min", b"_min", "_sum", b"_sum", "attributes", b"attributes", "bucket_counts", b"bucket_counts", "count", b"count", "exemplars", b"exemplars", "explicit_bounds", b"explicit_bounds", "flags", b"flags", "max", b"max", "min", b"min", "start_time_unix_nano", b"start_time_unix_nano", "sum", b"sum", "time_unix_nano", b"time_unix_nano"]) -> None: ... @typing.overload - def WhichOneof( - self, oneof_group: typing_extensions.Literal["_max", b"_max"] - ) -> typing_extensions.Literal["max"] | None: ... + def WhichOneof(self, oneof_group: typing.Literal["_max", b"_max"]) -> typing.Literal["max"] | None: ... @typing.overload - def WhichOneof( - self, oneof_group: typing_extensions.Literal["_min", b"_min"] - ) -> typing_extensions.Literal["min"] | None: ... + def WhichOneof(self, oneof_group: typing.Literal["_min", b"_min"]) -> typing.Literal["min"] | None: ... @typing.overload - def WhichOneof( - self, oneof_group: typing_extensions.Literal["_sum", b"_sum"] - ) -> typing_extensions.Literal["sum"] | None: ... + def WhichOneof(self, oneof_group: typing.Literal["_sum", b"_sum"]) -> typing.Literal["sum"] | None: ... global___HistogramDataPoint = HistogramDataPoint -@typing_extensions.final +@typing.final class ExponentialHistogramDataPoint(google.protobuf.message.Message): """ExponentialHistogramDataPoint is a single data point in a timeseries that describes the time-varying values of a ExponentialHistogram of double values. A ExponentialHistogram contains @@ -1109,7 +813,7 @@ class ExponentialHistogramDataPoint(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor - @typing_extensions.final + @typing.final class Buckets(google.protobuf.message.Message): """Buckets are a set of bucket counts, encoded in a contiguous array of counts. @@ -1125,11 +829,7 @@ class ExponentialHistogramDataPoint(google.protobuf.message.Message): Note: This uses a varint encoding as a simple form of compression. """ @property - def bucket_counts( - self, - ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[ - builtins.int - ]: + def bucket_counts(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.int]: """bucket_counts is an array of count values, where bucket_counts[i] carries the count of the bucket at index (offset+i). bucket_counts[i] is the count of values greater than base^(offset+i) and less than or equal to @@ -1147,12 +847,7 @@ class ExponentialHistogramDataPoint(google.protobuf.message.Message): offset: builtins.int = ..., bucket_counts: collections.abc.Iterable[builtins.int] | None = ..., ) -> None: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "bucket_counts", b"bucket_counts", "offset", b"offset" - ], - ) -> None: ... + def ClearField(self, field_name: typing.Literal["bucket_counts", b"bucket_counts", "offset", b"offset"]) -> None: ... ATTRIBUTES_FIELD_NUMBER: builtins.int START_TIME_UNIX_NANO_FIELD_NUMBER: builtins.int @@ -1168,17 +863,6 @@ class ExponentialHistogramDataPoint(google.protobuf.message.Message): MIN_FIELD_NUMBER: builtins.int MAX_FIELD_NUMBER: builtins.int ZERO_THRESHOLD_FIELD_NUMBER: builtins.int - @property - def attributes( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - opentelemetry.proto.common.v1.common_pb2.KeyValue - ]: - """The set of key/value pairs that uniquely identify the timeseries from - where this point belongs. The list may be empty (may contain 0 elements). - Attribute keys MUST be unique (it is not allowed to have more than one - attribute with the same key). - """ start_time_unix_nano: builtins.int """StartTimeUnixNano is optional but strongly encouraged, see the the detailed comments above Metric. @@ -1205,7 +889,7 @@ class ExponentialHistogramDataPoint(google.protobuf.message.Message): events, and is assumed to be monotonic over the values of these events. Negative events *can* be recorded, but sum should not be filled out when doing so. This is specifically to enforce compatibility w/ OpenMetrics, - see: https://github.com/prometheus/OpenMetrics/blob/v1.0.0/specification/OpenMetrics.md#histogram + see: https://github.com/OpenObservability/OpenMetrics/blob/main/specification/OpenMetrics.md#histogram """ scale: builtins.int """scale describes the resolution of the histogram. Boundaries are @@ -1234,26 +918,10 @@ class ExponentialHistogramDataPoint(google.protobuf.message.Message): Implementations MAY consider the zero bucket to have probability mass equal to (zero_count / count). """ - @property - def positive(self) -> global___ExponentialHistogramDataPoint.Buckets: - """positive carries the positive range of exponential bucket counts.""" - - @property - def negative(self) -> global___ExponentialHistogramDataPoint.Buckets: - """negative carries the negative range of exponential bucket counts.""" flags: builtins.int """Flags that apply to this specific data point. See DataPointFlags for the available flags and their meaning. """ - @property - def exemplars( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - global___Exemplar - ]: - """(Optional) List of exemplars collected from - measurements that were used to form the data point - """ min: builtins.float """min is the minimum value over (start_time, end_time].""" max: builtins.float @@ -1266,15 +934,32 @@ class ExponentialHistogramDataPoint(google.protobuf.message.Message): expressed using the standard exponential formula as well as values that have been rounded to zero. """ + @property + def attributes(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[opentelemetry.proto.common.v1.common_pb2.KeyValue]: + """The set of key/value pairs that uniquely identify the timeseries from + where this point belongs. The list may be empty (may contain 0 elements). + Attribute keys MUST be unique (it is not allowed to have more than one + attribute with the same key). + """ + + @property + def positive(self) -> global___ExponentialHistogramDataPoint.Buckets: + """positive carries the positive range of exponential bucket counts.""" + + @property + def negative(self) -> global___ExponentialHistogramDataPoint.Buckets: + """negative carries the negative range of exponential bucket counts.""" + + @property + def exemplars(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Exemplar]: + """(Optional) List of exemplars collected from + measurements that were used to form the data point + """ + def __init__( self, *, - attributes: ( - collections.abc.Iterable[ - opentelemetry.proto.common.v1.common_pb2.KeyValue - ] - | None - ) = ..., + attributes: collections.abc.Iterable[opentelemetry.proto.common.v1.common_pb2.KeyValue] | None = ..., start_time_unix_nano: builtins.int = ..., time_unix_nano: builtins.int = ..., count: builtins.int = ..., @@ -1289,82 +974,18 @@ class ExponentialHistogramDataPoint(google.protobuf.message.Message): max: builtins.float | None = ..., zero_threshold: builtins.float = ..., ) -> None: ... - def HasField( - self, - field_name: typing_extensions.Literal[ - "_max", - b"_max", - "_min", - b"_min", - "_sum", - b"_sum", - "max", - b"max", - "min", - b"min", - "negative", - b"negative", - "positive", - b"positive", - "sum", - b"sum", - ], - ) -> builtins.bool: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "_max", - b"_max", - "_min", - b"_min", - "_sum", - b"_sum", - "attributes", - b"attributes", - "count", - b"count", - "exemplars", - b"exemplars", - "flags", - b"flags", - "max", - b"max", - "min", - b"min", - "negative", - b"negative", - "positive", - b"positive", - "scale", - b"scale", - "start_time_unix_nano", - b"start_time_unix_nano", - "sum", - b"sum", - "time_unix_nano", - b"time_unix_nano", - "zero_count", - b"zero_count", - "zero_threshold", - b"zero_threshold", - ], - ) -> None: ... + def HasField(self, field_name: typing.Literal["_max", b"_max", "_min", b"_min", "_sum", b"_sum", "max", b"max", "min", b"min", "negative", b"negative", "positive", b"positive", "sum", b"sum"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["_max", b"_max", "_min", b"_min", "_sum", b"_sum", "attributes", b"attributes", "count", b"count", "exemplars", b"exemplars", "flags", b"flags", "max", b"max", "min", b"min", "negative", b"negative", "positive", b"positive", "scale", b"scale", "start_time_unix_nano", b"start_time_unix_nano", "sum", b"sum", "time_unix_nano", b"time_unix_nano", "zero_count", b"zero_count", "zero_threshold", b"zero_threshold"]) -> None: ... @typing.overload - def WhichOneof( - self, oneof_group: typing_extensions.Literal["_max", b"_max"] - ) -> typing_extensions.Literal["max"] | None: ... + def WhichOneof(self, oneof_group: typing.Literal["_max", b"_max"]) -> typing.Literal["max"] | None: ... @typing.overload - def WhichOneof( - self, oneof_group: typing_extensions.Literal["_min", b"_min"] - ) -> typing_extensions.Literal["min"] | None: ... + def WhichOneof(self, oneof_group: typing.Literal["_min", b"_min"]) -> typing.Literal["min"] | None: ... @typing.overload - def WhichOneof( - self, oneof_group: typing_extensions.Literal["_sum", b"_sum"] - ) -> typing_extensions.Literal["sum"] | None: ... + def WhichOneof(self, oneof_group: typing.Literal["_sum", b"_sum"]) -> typing.Literal["sum"] | None: ... global___ExponentialHistogramDataPoint = ExponentialHistogramDataPoint -@typing_extensions.final +@typing.final class SummaryDataPoint(google.protobuf.message.Message): """SummaryDataPoint is a single data point in a timeseries that describes the time-varying values of a Summary metric. @@ -1372,7 +993,7 @@ class SummaryDataPoint(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor - @typing_extensions.final + @typing.final class ValueAtQuantile(google.protobuf.message.Message): """Represents the value at a given quantile of a distribution. @@ -1403,12 +1024,7 @@ class SummaryDataPoint(google.protobuf.message.Message): quantile: builtins.float = ..., value: builtins.float = ..., ) -> None: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "quantile", b"quantile", "value", b"value" - ], - ) -> None: ... + def ClearField(self, field_name: typing.Literal["quantile", b"quantile", "value", b"value"]) -> None: ... ATTRIBUTES_FIELD_NUMBER: builtins.int START_TIME_UNIX_NANO_FIELD_NUMBER: builtins.int @@ -1417,17 +1033,6 @@ class SummaryDataPoint(google.protobuf.message.Message): SUM_FIELD_NUMBER: builtins.int QUANTILE_VALUES_FIELD_NUMBER: builtins.int FLAGS_FIELD_NUMBER: builtins.int - @property - def attributes( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - opentelemetry.proto.common.v1.common_pb2.KeyValue - ]: - """The set of key/value pairs that uniquely identify the timeseries from - where this point belongs. The list may be empty (may contain 0 elements). - Attribute keys MUST be unique (it is not allowed to have more than one - attribute with the same key). - """ start_time_unix_nano: builtins.int """StartTimeUnixNano is optional but strongly encouraged, see the the detailed comments above Metric. @@ -1451,63 +1056,42 @@ class SummaryDataPoint(google.protobuf.message.Message): events, and is assumed to be monotonic over the values of these events. Negative events *can* be recorded, but sum should not be filled out when doing so. This is specifically to enforce compatibility w/ OpenMetrics, - see: https://github.com/prometheus/OpenMetrics/blob/v1.0.0/specification/OpenMetrics.md#summary + see: https://github.com/OpenObservability/OpenMetrics/blob/main/specification/OpenMetrics.md#summary """ - @property - def quantile_values( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - global___SummaryDataPoint.ValueAtQuantile - ]: - """(Optional) list of values at different quantiles of the distribution calculated - from the current snapshot. The quantiles must be strictly increasing. - """ flags: builtins.int """Flags that apply to this specific data point. See DataPointFlags for the available flags and their meaning. """ + @property + def attributes(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[opentelemetry.proto.common.v1.common_pb2.KeyValue]: + """The set of key/value pairs that uniquely identify the timeseries from + where this point belongs. The list may be empty (may contain 0 elements). + Attribute keys MUST be unique (it is not allowed to have more than one + attribute with the same key). + """ + + @property + def quantile_values(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___SummaryDataPoint.ValueAtQuantile]: + """(Optional) list of values at different quantiles of the distribution calculated + from the current snapshot. The quantiles must be strictly increasing. + """ + def __init__( self, *, - attributes: ( - collections.abc.Iterable[ - opentelemetry.proto.common.v1.common_pb2.KeyValue - ] - | None - ) = ..., + attributes: collections.abc.Iterable[opentelemetry.proto.common.v1.common_pb2.KeyValue] | None = ..., start_time_unix_nano: builtins.int = ..., time_unix_nano: builtins.int = ..., count: builtins.int = ..., sum: builtins.float = ..., - quantile_values: ( - collections.abc.Iterable[global___SummaryDataPoint.ValueAtQuantile] - | None - ) = ..., + quantile_values: collections.abc.Iterable[global___SummaryDataPoint.ValueAtQuantile] | None = ..., flags: builtins.int = ..., ) -> None: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "attributes", - b"attributes", - "count", - b"count", - "flags", - b"flags", - "quantile_values", - b"quantile_values", - "start_time_unix_nano", - b"start_time_unix_nano", - "sum", - b"sum", - "time_unix_nano", - b"time_unix_nano", - ], - ) -> None: ... + def ClearField(self, field_name: typing.Literal["attributes", b"attributes", "count", b"count", "flags", b"flags", "quantile_values", b"quantile_values", "start_time_unix_nano", b"start_time_unix_nano", "sum", b"sum", "time_unix_nano", b"time_unix_nano"]) -> None: ... global___SummaryDataPoint = SummaryDataPoint -@typing_extensions.final +@typing.final class Exemplar(google.protobuf.message.Message): """A representation of an exemplar, which is a sample input measurement. Exemplars also hold information about the environment when the measurement @@ -1523,16 +1107,6 @@ class Exemplar(google.protobuf.message.Message): AS_INT_FIELD_NUMBER: builtins.int SPAN_ID_FIELD_NUMBER: builtins.int TRACE_ID_FIELD_NUMBER: builtins.int - @property - def filtered_attributes( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - opentelemetry.proto.common.v1.common_pb2.KeyValue - ]: - """The set of key/value pairs that were filtered out by the aggregator, but - recorded alongside the original measurement. Only key/value pairs that were - filtered out by the aggregator should be included - """ time_unix_nano: builtins.int """time_unix_nano is the exact time when this exemplar was recorded @@ -1551,48 +1125,25 @@ class Exemplar(google.protobuf.message.Message): trace_id may be missing if the measurement is not recorded inside a trace or if the trace is not sampled. """ + @property + def filtered_attributes(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[opentelemetry.proto.common.v1.common_pb2.KeyValue]: + """The set of key/value pairs that were filtered out by the aggregator, but + recorded alongside the original measurement. Only key/value pairs that were + filtered out by the aggregator should be included + """ + def __init__( self, *, - filtered_attributes: ( - collections.abc.Iterable[ - opentelemetry.proto.common.v1.common_pb2.KeyValue - ] - | None - ) = ..., + filtered_attributes: collections.abc.Iterable[opentelemetry.proto.common.v1.common_pb2.KeyValue] | None = ..., time_unix_nano: builtins.int = ..., as_double: builtins.float = ..., as_int: builtins.int = ..., span_id: builtins.bytes = ..., trace_id: builtins.bytes = ..., ) -> None: ... - def HasField( - self, - field_name: typing_extensions.Literal[ - "as_double", b"as_double", "as_int", b"as_int", "value", b"value" - ], - ) -> builtins.bool: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "as_double", - b"as_double", - "as_int", - b"as_int", - "filtered_attributes", - b"filtered_attributes", - "span_id", - b"span_id", - "time_unix_nano", - b"time_unix_nano", - "trace_id", - b"trace_id", - "value", - b"value", - ], - ) -> None: ... - def WhichOneof( - self, oneof_group: typing_extensions.Literal["value", b"value"] - ) -> typing_extensions.Literal["as_double", "as_int"] | None: ... + def HasField(self, field_name: typing.Literal["as_double", b"as_double", "as_int", b"as_int", "value", b"value"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["as_double", b"as_double", "as_int", b"as_int", "filtered_attributes", b"filtered_attributes", "span_id", b"span_id", "time_unix_nano", b"time_unix_nano", "trace_id", b"trace_id", "value", b"value"]) -> None: ... + def WhichOneof(self, oneof_group: typing.Literal["value", b"value"]) -> typing.Literal["as_double", "as_int"] | None: ... global___Exemplar = Exemplar diff --git a/opentelemetry-proto/src/opentelemetry/proto/resource/v1/resource_pb2.py b/opentelemetry-proto/src/opentelemetry/proto/resource/v1/resource_pb2.py index ffc7a5d3af1..98f4a2a2d22 100644 --- a/opentelemetry-proto/src/opentelemetry/proto/resource/v1/resource_pb2.py +++ b/opentelemetry-proto/src/opentelemetry/proto/resource/v1/resource_pb2.py @@ -1,37 +1,38 @@ # -*- coding: utf-8 -*- # Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE # source: opentelemetry/proto/resource/v1/resource.proto -# Protobuf Python Version: 5.26.1 +# Protobuf Python Version: 6.31.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version from google.protobuf import symbol_database as _symbol_database from google.protobuf.internal import builder as _builder - +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 6, + 31, + 0, + '', + 'opentelemetry/proto/resource/v1/resource.proto' +) # @@protoc_insertion_point(imports) _sym_db = _symbol_database.Default() -from opentelemetry.proto.common.v1 import ( - common_pb2 as opentelemetry_dot_proto_dot_common_dot_v1_dot_common__pb2, -) +from opentelemetry.proto.common.v1 import common_pb2 as opentelemetry_dot_proto_dot_common_dot_v1_dot_common__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile( - b'\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 = _descriptor_pool.Default().AddSerializedFile(b'\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') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages( - DESCRIPTOR, "opentelemetry.proto.resource.v1.resource_pb2", _globals -) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'opentelemetry.proto.resource.v1.resource_pb2', _globals) if not _descriptor._USE_C_DESCRIPTORS: - _globals["DESCRIPTOR"]._loaded_options = None - _globals["DESCRIPTOR"]._serialized_options = ( - b'\n"io.opentelemetry.proto.resource.v1B\rResourceProtoP\001Z*go.opentelemetry.io/proto/otlp/resource/v1\252\002\037OpenTelemetry.Proto.Resource.V1' - ) - _globals["_RESOURCE"]._serialized_start = 127 - _globals["_RESOURCE"]._serialized_end = 232 + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'\n\"io.opentelemetry.proto.resource.v1B\rResourceProtoP\001Z*go.opentelemetry.io/proto/otlp/resource/v1\252\002\037OpenTelemetry.Proto.Resource.V1' + _globals['_RESOURCE']._serialized_start=127 + _globals['_RESOURCE']._serialized_end=232 # @@protoc_insertion_point(module_scope) diff --git a/opentelemetry-proto/src/opentelemetry/proto/resource/v1/resource_pb2.pyi b/opentelemetry-proto/src/opentelemetry/proto/resource/v1/resource_pb2.pyi index 3e1f0805395..b602aa79657 100644 --- a/opentelemetry-proto/src/opentelemetry/proto/resource/v1/resource_pb2.pyi +++ b/opentelemetry-proto/src/opentelemetry/proto/resource/v1/resource_pb2.pyi @@ -22,13 +22,11 @@ import google.protobuf.descriptor import google.protobuf.internal.containers import google.protobuf.message import opentelemetry.proto.common.v1.common_pb2 -import sys - -import typing as typing_extensions +import typing DESCRIPTOR: google.protobuf.descriptor.FileDescriptor -@typing_extensions.final +@typing.final class Resource(google.protobuf.message.Message): """Resource information.""" @@ -36,39 +34,23 @@ class Resource(google.protobuf.message.Message): ATTRIBUTES_FIELD_NUMBER: builtins.int DROPPED_ATTRIBUTES_COUNT_FIELD_NUMBER: builtins.int + dropped_attributes_count: builtins.int + """dropped_attributes_count is the number of dropped attributes. If the value is 0, then + no attributes were dropped. + """ @property - def attributes( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - opentelemetry.proto.common.v1.common_pb2.KeyValue - ]: + def attributes(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[opentelemetry.proto.common.v1.common_pb2.KeyValue]: """Set of attributes that describe the resource. Attribute keys MUST be unique (it is not allowed to have more than one attribute with the same key). """ - dropped_attributes_count: builtins.int - """dropped_attributes_count is the number of dropped attributes. If the value is 0, then - no attributes were dropped. - """ + def __init__( self, *, - attributes: ( - collections.abc.Iterable[ - opentelemetry.proto.common.v1.common_pb2.KeyValue - ] - | None - ) = ..., + attributes: collections.abc.Iterable[opentelemetry.proto.common.v1.common_pb2.KeyValue] | None = ..., dropped_attributes_count: builtins.int = ..., ) -> None: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "attributes", - b"attributes", - "dropped_attributes_count", - b"dropped_attributes_count", - ], - ) -> None: ... + def ClearField(self, field_name: typing.Literal["attributes", b"attributes", "dropped_attributes_count", b"dropped_attributes_count"]) -> None: ... global___Resource = Resource diff --git a/opentelemetry-proto/src/opentelemetry/proto/trace/v1/trace_pb2.py b/opentelemetry-proto/src/opentelemetry/proto/trace/v1/trace_pb2.py index f573faa6ff3..62058abe2d0 100644 --- a/opentelemetry-proto/src/opentelemetry/proto/trace/v1/trace_pb2.py +++ b/opentelemetry-proto/src/opentelemetry/proto/trace/v1/trace_pb2.py @@ -1,58 +1,57 @@ # -*- coding: utf-8 -*- # Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE # source: opentelemetry/proto/trace/v1/trace.proto -# Protobuf Python Version: 5.26.1 +# Protobuf Python Version: 6.31.0 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version from google.protobuf import symbol_database as _symbol_database from google.protobuf.internal import builder as _builder - +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 6, + 31, + 0, + '', + 'opentelemetry/proto/trace/v1/trace.proto' +) # @@protoc_insertion_point(imports) _sym_db = _symbol_database.Default() -from opentelemetry.proto.common.v1 import ( - common_pb2 as opentelemetry_dot_proto_dot_common_dot_v1_dot_common__pb2, -) -from opentelemetry.proto.resource.v1 import ( - resource_pb2 as opentelemetry_dot_proto_dot_resource_dot_v1_dot_resource__pb2, -) +from opentelemetry.proto.common.v1 import common_pb2 as opentelemetry_dot_proto_dot_common_dot_v1_dot_common__pb2 +from opentelemetry.proto.resource.v1 import resource_pb2 as opentelemetry_dot_proto_dot_resource_dot_v1_dot_resource__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile( - b'\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' -) +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\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') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages( - DESCRIPTOR, "opentelemetry.proto.trace.v1.trace_pb2", _globals -) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'opentelemetry.proto.trace.v1.trace_pb2', _globals) if not _descriptor._USE_C_DESCRIPTORS: - _globals["DESCRIPTOR"]._loaded_options = None - _globals["DESCRIPTOR"]._serialized_options = ( - b"\n\037io.opentelemetry.proto.trace.v1B\nTraceProtoP\001Z'go.opentelemetry.io/proto/otlp/trace/v1\252\002\034OpenTelemetry.Proto.Trace.V1" - ) - _globals["_SPANFLAGS"]._serialized_start = 1782 - _globals["_SPANFLAGS"]._serialized_end = 1938 - _globals["_TRACESDATA"]._serialized_start = 166 - _globals["_TRACESDATA"]._serialized_end = 247 - _globals["_RESOURCESPANS"]._serialized_start = 250 - _globals["_RESOURCESPANS"]._serialized_end = 417 - _globals["_SCOPESPANS"]._serialized_start = 420 - _globals["_SCOPESPANS"]._serialized_end = 571 - _globals["_SPAN"]._serialized_start = 574 - _globals["_SPAN"]._serialized_end = 1602 - _globals["_SPAN_EVENT"]._serialized_start = 1131 - _globals["_SPAN_EVENT"]._serialized_end = 1271 - _globals["_SPAN_LINK"]._serialized_start = 1274 - _globals["_SPAN_LINK"]._serialized_end = 1446 - _globals["_SPAN_SPANKIND"]._serialized_start = 1449 - _globals["_SPAN_SPANKIND"]._serialized_end = 1602 - _globals["_STATUS"]._serialized_start = 1605 - _globals["_STATUS"]._serialized_end = 1779 - _globals["_STATUS_STATUSCODE"]._serialized_start = 1695 - _globals["_STATUS_STATUSCODE"]._serialized_end = 1773 + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'\n\037io.opentelemetry.proto.trace.v1B\nTraceProtoP\001Z\'go.opentelemetry.io/proto/otlp/trace/v1\252\002\034OpenTelemetry.Proto.Trace.V1' + _globals['_SPANFLAGS']._serialized_start=1782 + _globals['_SPANFLAGS']._serialized_end=1938 + _globals['_TRACESDATA']._serialized_start=166 + _globals['_TRACESDATA']._serialized_end=247 + _globals['_RESOURCESPANS']._serialized_start=250 + _globals['_RESOURCESPANS']._serialized_end=417 + _globals['_SCOPESPANS']._serialized_start=420 + _globals['_SCOPESPANS']._serialized_end=571 + _globals['_SPAN']._serialized_start=574 + _globals['_SPAN']._serialized_end=1602 + _globals['_SPAN_EVENT']._serialized_start=1131 + _globals['_SPAN_EVENT']._serialized_end=1271 + _globals['_SPAN_LINK']._serialized_start=1274 + _globals['_SPAN_LINK']._serialized_end=1446 + _globals['_SPAN_SPANKIND']._serialized_start=1449 + _globals['_SPAN_SPANKIND']._serialized_end=1602 + _globals['_STATUS']._serialized_start=1605 + _globals['_STATUS']._serialized_end=1779 + _globals['_STATUS_STATUSCODE']._serialized_start=1695 + _globals['_STATUS_STATUSCODE']._serialized_end=1773 # @@protoc_insertion_point(module_scope) diff --git a/opentelemetry-proto/src/opentelemetry/proto/trace/v1/trace_pb2.pyi b/opentelemetry-proto/src/opentelemetry/proto/trace/v1/trace_pb2.pyi index d75e7e03181..5b384df6de4 100644 --- a/opentelemetry-proto/src/opentelemetry/proto/trace/v1/trace_pb2.pyi +++ b/opentelemetry-proto/src/opentelemetry/proto/trace/v1/trace_pb2.pyi @@ -38,12 +38,7 @@ class _SpanFlags: ValueType = typing.NewType("ValueType", builtins.int) V: typing_extensions.TypeAlias = ValueType -class _SpanFlagsEnumTypeWrapper( - google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[ - _SpanFlags.ValueType - ], - builtins.type, -): +class _SpanFlagsEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_SpanFlags.ValueType], builtins.type): DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor SPAN_FLAGS_DO_NOT_USE: _SpanFlags.ValueType # 0 """The zero value for the enum. Should not be used for comparisons. @@ -89,7 +84,7 @@ Bit 9 (`IS_REMOTE`) indicates whether the span or link is remote. SPAN_FLAGS_CONTEXT_IS_REMOTE_MASK: SpanFlags.ValueType # 512 global___SpanFlags = SpanFlags -@typing_extensions.final +@typing.final class TracesData(google.protobuf.message.Message): """TracesData represents the traces data that can be stored in a persistent storage, OR can be embedded by other protocols that transfer OTLP traces data but do @@ -107,11 +102,7 @@ class TracesData(google.protobuf.message.Message): RESOURCE_SPANS_FIELD_NUMBER: builtins.int @property - def resource_spans( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - global___ResourceSpans - ]: + def resource_spans(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ResourceSpans]: """An array of ResourceSpans. For data coming from a single resource this array will typically contain one element. Intermediary nodes that receive data from multiple origins @@ -122,20 +113,13 @@ class TracesData(google.protobuf.message.Message): def __init__( self, *, - resource_spans: ( - collections.abc.Iterable[global___ResourceSpans] | None - ) = ..., - ) -> None: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "resource_spans", b"resource_spans" - ], + resource_spans: collections.abc.Iterable[global___ResourceSpans] | None = ..., ) -> None: ... + def ClearField(self, field_name: typing.Literal["resource_spans", b"resource_spans"]) -> None: ... global___TracesData = TracesData -@typing_extensions.final +@typing.final class ResourceSpans(google.protobuf.message.Message): """A collection of ScopeSpans from a Resource.""" @@ -144,21 +128,6 @@ class ResourceSpans(google.protobuf.message.Message): RESOURCE_FIELD_NUMBER: builtins.int SCOPE_SPANS_FIELD_NUMBER: builtins.int SCHEMA_URL_FIELD_NUMBER: builtins.int - @property - def resource( - self, - ) -> opentelemetry.proto.resource.v1.resource_pb2.Resource: - """The resource for the spans in this message. - If this field is not set then no resource info is known. - """ - - @property - def scope_spans( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - global___ScopeSpans - ]: - """A list of ScopeSpans that originate from a resource.""" schema_url: builtins.str """The Schema URL, if known. This is the identifier of the Schema that the resource data is recorded in. To learn more about Schema URL see @@ -166,35 +135,29 @@ class ResourceSpans(google.protobuf.message.Message): This schema_url applies to the data in the "resource" field. It does not apply to the data in the "scope_spans" field which have their own schema_url field. """ + @property + def resource(self) -> opentelemetry.proto.resource.v1.resource_pb2.Resource: + """The resource for the spans in this message. + If this field is not set then no resource info is known. + """ + + @property + def scope_spans(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ScopeSpans]: + """A list of ScopeSpans that originate from a resource.""" + def __init__( self, *, - resource: ( - opentelemetry.proto.resource.v1.resource_pb2.Resource | None - ) = ..., - scope_spans: ( - collections.abc.Iterable[global___ScopeSpans] | None - ) = ..., + resource: opentelemetry.proto.resource.v1.resource_pb2.Resource | None = ..., + scope_spans: collections.abc.Iterable[global___ScopeSpans] | None = ..., schema_url: builtins.str = ..., ) -> None: ... - def HasField( - self, field_name: typing_extensions.Literal["resource", b"resource"] - ) -> builtins.bool: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "resource", - b"resource", - "schema_url", - b"schema_url", - "scope_spans", - b"scope_spans", - ], - ) -> None: ... + def HasField(self, field_name: typing.Literal["resource", b"resource"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["resource", b"resource", "schema_url", b"schema_url", "scope_spans", b"scope_spans"]) -> None: ... global___ResourceSpans = ResourceSpans -@typing_extensions.final +@typing.final class ScopeSpans(google.protobuf.message.Message): """A collection of Spans produced by an InstrumentationScope.""" @@ -203,51 +166,36 @@ class ScopeSpans(google.protobuf.message.Message): SCOPE_FIELD_NUMBER: builtins.int SPANS_FIELD_NUMBER: builtins.int SCHEMA_URL_FIELD_NUMBER: builtins.int + schema_url: builtins.str + """The Schema URL, if known. This is the identifier of the Schema that the span data + is recorded in. To learn more about Schema URL see + https://opentelemetry.io/docs/specs/otel/schemas/#schema-url + This schema_url applies to all spans and span events in the "spans" field. + """ @property - def scope( - self, - ) -> opentelemetry.proto.common.v1.common_pb2.InstrumentationScope: + def scope(self) -> opentelemetry.proto.common.v1.common_pb2.InstrumentationScope: """The instrumentation scope information for the spans in this message. Semantically when InstrumentationScope isn't set, it is equivalent with an empty instrumentation scope name (unknown). """ @property - def spans( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - global___Span - ]: + def spans(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Span]: """A list of Spans that originate from an instrumentation scope.""" - schema_url: builtins.str - """The Schema URL, if known. This is the identifier of the Schema that the span data - is recorded in. To learn more about Schema URL see - https://opentelemetry.io/docs/specs/otel/schemas/#schema-url - This schema_url applies to all spans and span events in the "spans" field. - """ + def __init__( self, *, - scope: ( - opentelemetry.proto.common.v1.common_pb2.InstrumentationScope - | None - ) = ..., + scope: opentelemetry.proto.common.v1.common_pb2.InstrumentationScope | None = ..., spans: collections.abc.Iterable[global___Span] | None = ..., schema_url: builtins.str = ..., ) -> None: ... - def HasField( - self, field_name: typing_extensions.Literal["scope", b"scope"] - ) -> builtins.bool: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "schema_url", b"schema_url", "scope", b"scope", "spans", b"spans" - ], - ) -> None: ... + def HasField(self, field_name: typing.Literal["scope", b"scope"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["schema_url", b"schema_url", "scope", b"scope", "spans", b"spans"]) -> None: ... global___ScopeSpans = ScopeSpans -@typing_extensions.final +@typing.final class Span(google.protobuf.message.Message): """A Span represents a single operation performed by a single component of the system. @@ -260,12 +208,7 @@ class Span(google.protobuf.message.Message): ValueType = typing.NewType("ValueType", builtins.int) V: typing_extensions.TypeAlias = ValueType - class _SpanKindEnumTypeWrapper( - google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[ - Span._SpanKind.ValueType - ], - builtins.type, - ): + class _SpanKindEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[Span._SpanKind.ValueType], builtins.type): DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor SPAN_KIND_UNSPECIFIED: Span._SpanKind.ValueType # 0 """Unspecified. Do NOT use as default. @@ -324,7 +267,7 @@ class Span(google.protobuf.message.Message): between producer and consumer spans. """ - @typing_extensions.final + @typing.final class Event(google.protobuf.message.Message): """Event is a time-stamped annotation of the span, consisting of user-supplied text description and key-value pairs. @@ -342,48 +285,28 @@ class Span(google.protobuf.message.Message): """name of the event. This field is semantically required to be set to non-empty string. """ + dropped_attributes_count: builtins.int + """dropped_attributes_count is the number of dropped attributes. If the value is 0, + then no attributes were dropped. + """ @property - def attributes( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - opentelemetry.proto.common.v1.common_pb2.KeyValue - ]: + def attributes(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[opentelemetry.proto.common.v1.common_pb2.KeyValue]: """attributes is a collection of attribute key/value pairs on the event. Attribute keys MUST be unique (it is not allowed to have more than one attribute with the same key). """ - dropped_attributes_count: builtins.int - """dropped_attributes_count is the number of dropped attributes. If the value is 0, - then no attributes were dropped. - """ + def __init__( self, *, time_unix_nano: builtins.int = ..., name: builtins.str = ..., - attributes: ( - collections.abc.Iterable[ - opentelemetry.proto.common.v1.common_pb2.KeyValue - ] - | None - ) = ..., + attributes: collections.abc.Iterable[opentelemetry.proto.common.v1.common_pb2.KeyValue] | None = ..., dropped_attributes_count: builtins.int = ..., ) -> None: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "attributes", - b"attributes", - "dropped_attributes_count", - b"dropped_attributes_count", - "name", - b"name", - "time_unix_nano", - b"time_unix_nano", - ], - ) -> None: ... + def ClearField(self, field_name: typing.Literal["attributes", b"attributes", "dropped_attributes_count", b"dropped_attributes_count", "name", b"name", "time_unix_nano", b"time_unix_nano"]) -> None: ... - @typing_extensions.final + @typing.final class Link(google.protobuf.message.Message): """A pointer from the current span to another span in the same trace or in a different trace. For example, this can be used in batching operations, @@ -407,16 +330,6 @@ class Span(google.protobuf.message.Message): """A unique identifier for the linked span. The ID is an 8-byte array.""" trace_state: builtins.str """The trace_state associated with the link.""" - @property - def attributes( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - opentelemetry.proto.common.v1.common_pb2.KeyValue - ]: - """attributes is a collection of attribute key/value pairs on the link. - Attribute keys MUST be unique (it is not allowed to have more than one - attribute with the same key). - """ dropped_attributes_count: builtins.int """dropped_attributes_count is the number of dropped attributes. If the value is 0, then no attributes were dropped. @@ -440,38 +353,24 @@ class Span(google.protobuf.message.Message): [Optional]. """ + @property + def attributes(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[opentelemetry.proto.common.v1.common_pb2.KeyValue]: + """attributes is a collection of attribute key/value pairs on the link. + Attribute keys MUST be unique (it is not allowed to have more than one + attribute with the same key). + """ + def __init__( self, *, trace_id: builtins.bytes = ..., span_id: builtins.bytes = ..., trace_state: builtins.str = ..., - attributes: ( - collections.abc.Iterable[ - opentelemetry.proto.common.v1.common_pb2.KeyValue - ] - | None - ) = ..., + attributes: collections.abc.Iterable[opentelemetry.proto.common.v1.common_pb2.KeyValue] | None = ..., dropped_attributes_count: builtins.int = ..., flags: builtins.int = ..., ) -> None: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "attributes", - b"attributes", - "dropped_attributes_count", - b"dropped_attributes_count", - "flags", - b"flags", - "span_id", - b"span_id", - "trace_id", - b"trace_id", - "trace_state", - b"trace_state", - ], - ) -> None: ... + def ClearField(self, field_name: typing.Literal["attributes", b"attributes", "dropped_attributes_count", b"dropped_attributes_count", "flags", b"flags", "span_id", b"span_id", "trace_id", b"trace_id", "trace_state", b"trace_state"]) -> None: ... TRACE_ID_FIELD_NUMBER: builtins.int SPAN_ID_FIELD_NUMBER: builtins.int @@ -571,12 +470,21 @@ class Span(google.protobuf.message.Message): This field is semantically required and it is expected that end_time >= start_time. """ + dropped_attributes_count: builtins.int + """dropped_attributes_count is the number of attributes that were discarded. Attributes + can be discarded because their keys are too long or because there are too many + attributes. If this value is 0, then no attributes were dropped. + """ + dropped_events_count: builtins.int + """dropped_events_count is the number of dropped events. If the value is 0, then no + events were dropped. + """ + dropped_links_count: builtins.int + """dropped_links_count is the number of dropped links after the maximum size was + enforced. If this value is 0, then no links were dropped. + """ @property - def attributes( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - opentelemetry.proto.common.v1.common_pb2.KeyValue - ]: + def attributes(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[opentelemetry.proto.common.v1.common_pb2.KeyValue]: """attributes is a collection of key/value pairs. Note, global attributes like server name can be set using the resource API. Examples of attributes: @@ -590,35 +498,17 @@ class Span(google.protobuf.message.Message): Attribute keys MUST be unique (it is not allowed to have more than one attribute with the same key). """ - dropped_attributes_count: builtins.int - """dropped_attributes_count is the number of attributes that were discarded. Attributes - can be discarded because their keys are too long or because there are too many - attributes. If this value is 0, then no attributes were dropped. - """ + @property - def events( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - global___Span.Event - ]: + def events(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Span.Event]: """events is a collection of Event items.""" - dropped_events_count: builtins.int - """dropped_events_count is the number of dropped events. If the value is 0, then no - events were dropped. - """ + @property - def links( - self, - ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[ - global___Span.Link - ]: + def links(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Span.Link]: """links is a collection of Links, which are references from this span to a span in the same or different trace. """ - dropped_links_count: builtins.int - """dropped_links_count is the number of dropped links after the maximum size was - enforced. If this value is 0, then no links were dropped. - """ + @property def status(self) -> global___Status: """An optional final status for this span. Semantically when Status isn't set, it means @@ -637,12 +527,7 @@ class Span(google.protobuf.message.Message): kind: global___Span.SpanKind.ValueType = ..., start_time_unix_nano: builtins.int = ..., end_time_unix_nano: builtins.int = ..., - attributes: ( - collections.abc.Iterable[ - opentelemetry.proto.common.v1.common_pb2.KeyValue - ] - | None - ) = ..., + attributes: collections.abc.Iterable[opentelemetry.proto.common.v1.common_pb2.KeyValue] | None = ..., dropped_attributes_count: builtins.int = ..., events: collections.abc.Iterable[global___Span.Event] | None = ..., dropped_events_count: builtins.int = ..., @@ -650,50 +535,12 @@ class Span(google.protobuf.message.Message): dropped_links_count: builtins.int = ..., status: global___Status | None = ..., ) -> None: ... - def HasField( - self, field_name: typing_extensions.Literal["status", b"status"] - ) -> builtins.bool: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "attributes", - b"attributes", - "dropped_attributes_count", - b"dropped_attributes_count", - "dropped_events_count", - b"dropped_events_count", - "dropped_links_count", - b"dropped_links_count", - "end_time_unix_nano", - b"end_time_unix_nano", - "events", - b"events", - "flags", - b"flags", - "kind", - b"kind", - "links", - b"links", - "name", - b"name", - "parent_span_id", - b"parent_span_id", - "span_id", - b"span_id", - "start_time_unix_nano", - b"start_time_unix_nano", - "status", - b"status", - "trace_id", - b"trace_id", - "trace_state", - b"trace_state", - ], - ) -> None: ... + def HasField(self, field_name: typing.Literal["status", b"status"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["attributes", b"attributes", "dropped_attributes_count", b"dropped_attributes_count", "dropped_events_count", b"dropped_events_count", "dropped_links_count", b"dropped_links_count", "end_time_unix_nano", b"end_time_unix_nano", "events", b"events", "flags", b"flags", "kind", b"kind", "links", b"links", "name", b"name", "parent_span_id", b"parent_span_id", "span_id", b"span_id", "start_time_unix_nano", b"start_time_unix_nano", "status", b"status", "trace_id", b"trace_id", "trace_state", b"trace_state"]) -> None: ... global___Span = Span -@typing_extensions.final +@typing.final class Status(google.protobuf.message.Message): """The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. @@ -705,12 +552,7 @@ class Status(google.protobuf.message.Message): ValueType = typing.NewType("ValueType", builtins.int) V: typing_extensions.TypeAlias = ValueType - class _StatusCodeEnumTypeWrapper( - google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[ - Status._StatusCode.ValueType - ], - builtins.type, - ): + class _StatusCodeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[Status._StatusCode.ValueType], builtins.type): DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor STATUS_CODE_UNSET: Status._StatusCode.ValueType # 0 """The default status.""" @@ -747,11 +589,6 @@ class Status(google.protobuf.message.Message): message: builtins.str = ..., code: global___Status.StatusCode.ValueType = ..., ) -> None: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "code", b"code", "message", b"message" - ], - ) -> None: ... + def ClearField(self, field_name: typing.Literal["code", b"code", "message", b"message"]) -> None: ... global___Status = Status diff --git a/opentelemetry-proto/test-requirements.txt b/opentelemetry-proto/test-requirements.txt index 892e355def8..ec75af462b9 100644 --- a/opentelemetry-proto/test-requirements.txt +++ b/opentelemetry-proto/test-requirements.txt @@ -3,7 +3,7 @@ importlib-metadata==6.11.0 iniconfig==2.0.0 packaging==24.0 pluggy==1.5.0 -protobuf==5.26.1 +protobuf==6.31.1 py-cpuinfo==9.0.0 pytest==7.4.4 tomli==2.0.1 diff --git a/scripts/proto_codegen.sh b/scripts/proto_codegen.sh index f445d3f42a0..3742a990d38 100755 --- a/scripts/proto_codegen.sh +++ b/scripts/proto_codegen.sh @@ -11,31 +11,23 @@ # Optional envars: # PROTO_REPO_DIR - the path to an existing checkout of the opentelemetry-proto repo +set -euo pipefail + # Pinned commit/branch/tag for the current version used in opentelemetry-proto python package. PROTO_REPO_BRANCH_OR_COMMIT="v1.2.0" - -set -e - -PROTO_REPO_DIR=${PROTO_REPO_DIR:-"/tmp/opentelemetry-proto"} +PROTO_REPO_DIR=${PROTO_REPO_DIR:-"$(mktemp -d)/opentelemetry-proto"} # root of opentelemetry-python repo -repo_root="$(git rev-parse --show-toplevel)" -venv_dir="/tmp/proto_codegen_venv" +REPO_ROOT="$(git rev-parse --show-toplevel)" +OUT_DIR="$REPO_ROOT/opentelemetry-proto/src" +#CLEAN_DIR="${OUT_DIR}/opentelemetry" +PYTHON_VERSION=3.13 +PROTOC="uv run -p $PYTHON_VERSION \ + --no-project \ + --with-requirements $REPO_ROOT/gen-requirements.txt \ + python -m grpc_tools.protoc" -# run on exit even if crash -cleanup() { - echo "Deleting $venv_dir" - rm -rf $venv_dir -} -trap cleanup EXIT - -echo "Creating temporary virtualenv at $venv_dir using $(python3 --version)" -python3 -m venv $venv_dir -source $venv_dir/bin/activate -python -m pip install \ - -c $repo_root/gen-requirements.txt \ - grpcio-tools mypy-protobuf -echo 'python -m grpc_tools.protoc --version' -python -m grpc_tools.protoc --version +echo 'protoc --version' +$PROTOC --version # Clone the proto repo if it doesn't exist if [ ! -d "$PROTO_REPO_DIR" ]; then @@ -51,27 +43,25 @@ fi git symbolic-ref -q HEAD && git pull --ff-only || true ) -cd $repo_root/opentelemetry-proto/src - # clean up old generated code -find opentelemetry/ -regex ".*_pb2.*\.pyi?" -exec rm {} + +find $OUT_DIR -regex ".*_pb2.*\.pyi?" -exec rm {} + # generate proto code for all protos all_protos=$(find $PROTO_REPO_DIR/ -iname "*.proto") -python -m grpc_tools.protoc \ +$PROTOC \ -I $PROTO_REPO_DIR \ - --python_out=. \ - --mypy_out=. \ + --python_out=$OUT_DIR \ + --mypy_out=$OUT_DIR \ $all_protos # generate grpc output only for protos with service definitions service_protos=$(grep -REl "service \w+ {" $PROTO_REPO_DIR/opentelemetry/) -python -m grpc_tools.protoc \ +$PROTOC \ -I $PROTO_REPO_DIR \ - --python_out=. \ - --mypy_out=. \ - --grpc_python_out=. \ + --python_out=$OUT_DIR \ + --mypy_out=$OUT_DIR \ + --grpc_python_out=$OUT_DIR \ $service_protos echo "Please update ./opentelemetry-proto/README.rst to include the updated version." diff --git a/tox.ini b/tox.ini index 81451578b59..c526fa75b61 100644 --- a/tox.ini +++ b/tox.ini @@ -10,9 +10,9 @@ envlist = pypy3-test-opentelemetry-api lint-opentelemetry-api - py3{9,10,11,12,13}-test-opentelemetry-proto-protobuf5 - pypy3-test-opentelemetry-proto-protobuf5 - lint-opentelemetry-proto-protobuf5 + py3{9,10,11,12,13}-test-opentelemetry-proto-protobuf6 + pypy3-test-opentelemetry-proto-protobuf6 + lint-opentelemetry-proto-protobuf6 py3{9,10,11,12,13}-test-opentelemetry-sdk pypy3-test-opentelemetry-sdk @@ -111,7 +111,7 @@ deps = test-utils: -r {toxinidir}/tests/opentelemetry-test-utils/test-requirements.txt - opentelemetry-proto-protobuf5: -r {toxinidir}/opentelemetry-proto/test-requirements.txt + opentelemetry-proto-protobuf6: -r {toxinidir}/opentelemetry-proto/test-requirements.txt exporter-opencensus: -r {toxinidir}/exporter/opentelemetry-exporter-opencensus/test-requirements.txt @@ -169,8 +169,8 @@ commands = lint-opentelemetry-sdk: pylint {toxinidir}/opentelemetry-sdk benchmark-opentelemetry-sdk: pytest {toxinidir}/opentelemetry-sdk/benchmarks --benchmark-json={toxinidir}/opentelemetry-sdk/sdk-benchmark.json {posargs} - test-opentelemetry-proto-protobuf5: pytest {toxinidir}/opentelemetry-proto/tests {posargs} - lint-opentelemetry-proto-protobuf5: pylint {toxinidir}/opentelemetry-proto + test-opentelemetry-proto-protobuf6: pytest {toxinidir}/opentelemetry-proto/tests {posargs} + lint-opentelemetry-proto-protobuf6: pylint {toxinidir}/opentelemetry-proto test-opentelemetry-semantic-conventions: pytest {toxinidir}/opentelemetry-semantic-conventions/tests {posargs} lint-opentelemetry-semantic-conventions: pylint {toxinidir}/opentelemetry-semantic-conventions diff --git a/uv.lock b/uv.lock index 26c44026f7a..e753aaa4d83 100644 --- a/uv.lock +++ b/uv.lock @@ -122,67 +122,72 @@ wheels = [ [[package]] name = "googleapis-common-protos" -version = "1.68.0" +version = "1.70.0" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "protobuf" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/54/d2/c08f0d9f94b45faca68e355771329cba2411c777c8713924dd1baee0e09c/googleapis_common_protos-1.68.0.tar.gz", hash = "sha256:95d38161f4f9af0d9423eed8fb7b64ffd2568c3464eb542ff02c5bfa1953ab3c", size = 57367 } +sdist = { url = "https://files.pythonhosted.org/packages/39/24/33db22342cf4a2ea27c9955e6713140fedd51e8b141b5ce5260897020f1a/googleapis_common_protos-1.70.0.tar.gz", hash = "sha256:0e1b44e0ea153e6594f9f394fef15193a68aaaea2d843f83e2742717ca753257", size = 145903 } wheels = [ - { url = "https://files.pythonhosted.org/packages/3f/85/c99a157ee99d67cc6c9ad123abb8b1bfb476fab32d2f3511c59314548e4f/googleapis_common_protos-1.68.0-py2.py3-none-any.whl", hash = "sha256:aaf179b2f81df26dfadac95def3b16a95064c76a5f45f07e4c68a21bb371c4ac", size = 164985 }, + { url = "https://files.pythonhosted.org/packages/86/f1/62a193f0227cf15a920390abe675f386dec35f7ae3ffe6da582d3ade42c7/googleapis_common_protos-1.70.0-py3-none-any.whl", hash = "sha256:b8bfcca8c25a2bb253e0e0b0adaf8c00773e5e6af6fd92397576680b807e0fd8", size = 294530 }, ] [[package]] name = "grpcio" -version = "1.70.0" +version = "1.73.0" source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/69/e1/4b21b5017c33f3600dcc32b802bb48fe44a4d36d6c066f52650c7c2690fa/grpcio-1.70.0.tar.gz", hash = "sha256:8d1584a68d5922330025881e63a6c1b54cc8117291d382e4fa69339b6d914c56", size = 12788932 } +sdist = { url = "https://files.pythonhosted.org/packages/8e/7b/ca3f561aeecf0c846d15e1b38921a60dffffd5d4113931198fbf455334ee/grpcio-1.73.0.tar.gz", hash = "sha256:3af4c30918a7f0d39de500d11255f8d9da4f30e94a2033e70fe2a720e184bd8e", size = 12786424 } wheels = [ - { url = "https://files.pythonhosted.org/packages/10/e9/f72408bac1f7b05b25e4df569b02d6b200c8e7857193aa9f1df7a3744add/grpcio-1.70.0-cp310-cp310-linux_armv7l.whl", hash = "sha256:95469d1977429f45fe7df441f586521361e235982a0b39e33841549143ae2851", size = 5229736 }, - { url = "https://files.pythonhosted.org/packages/b3/17/e65139ea76dac7bcd8a3f17cbd37e3d1a070c44db3098d0be5e14c5bd6a1/grpcio-1.70.0-cp310-cp310-macosx_12_0_universal2.whl", hash = "sha256:ed9718f17fbdb472e33b869c77a16d0b55e166b100ec57b016dc7de9c8d236bf", size = 11432751 }, - { url = "https://files.pythonhosted.org/packages/a0/12/42de6082b4ab14a59d30b2fc7786882fdaa75813a4a4f3d4a8c4acd6ed59/grpcio-1.70.0-cp310-cp310-manylinux_2_17_aarch64.whl", hash = "sha256:374d014f29f9dfdb40510b041792e0e2828a1389281eb590df066e1cc2b404e5", size = 5711439 }, - { url = "https://files.pythonhosted.org/packages/34/f8/b5a19524d273cbd119274a387bb72d6fbb74578e13927a473bc34369f079/grpcio-1.70.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f2af68a6f5c8f78d56c145161544ad0febbd7479524a59c16b3e25053f39c87f", size = 6330777 }, - { url = "https://files.pythonhosted.org/packages/1a/67/3d6c0ad786238aac7fa93b79246fc452978fbfe9e5f86f70da8e8a2797d0/grpcio-1.70.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ce7df14b2dcd1102a2ec32f621cc9fab6695effef516efbc6b063ad749867295", size = 5944639 }, - { url = "https://files.pythonhosted.org/packages/76/0d/d9f7cbc41c2743cf18236a29b6a582f41bd65572a7144d92b80bc1e68479/grpcio-1.70.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c78b339869f4dbf89881e0b6fbf376313e4f845a42840a7bdf42ee6caed4b11f", size = 6643543 }, - { url = "https://files.pythonhosted.org/packages/fc/24/bdd7e606b3400c14330e33a4698fa3a49e38a28c9e0a831441adbd3380d2/grpcio-1.70.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:58ad9ba575b39edef71f4798fdb5c7b6d02ad36d47949cd381d4392a5c9cbcd3", size = 6199897 }, - { url = "https://files.pythonhosted.org/packages/d1/33/8132eb370087960c82d01b89faeb28f3e58f5619ffe19889f57c58a19c18/grpcio-1.70.0-cp310-cp310-win32.whl", hash = "sha256:2b0d02e4b25a5c1f9b6c7745d4fa06efc9fd6a611af0fb38d3ba956786b95199", size = 3617513 }, - { url = "https://files.pythonhosted.org/packages/99/bc/0fce5cfc0ca969df66f5dca6cf8d2258abb88146bf9ab89d8cf48e970137/grpcio-1.70.0-cp310-cp310-win_amd64.whl", hash = "sha256:0de706c0a5bb9d841e353f6343a9defc9fc35ec61d6eb6111802f3aa9fef29e1", size = 4303342 }, - { url = "https://files.pythonhosted.org/packages/65/c4/1f67d23d6bcadd2fd61fb460e5969c52b3390b4a4e254b5e04a6d1009e5e/grpcio-1.70.0-cp311-cp311-linux_armv7l.whl", hash = "sha256:17325b0be0c068f35770f944124e8839ea3185d6d54862800fc28cc2ffad205a", size = 5229017 }, - { url = "https://files.pythonhosted.org/packages/e4/bd/cc36811c582d663a740fb45edf9f99ddbd99a10b6ba38267dc925e1e193a/grpcio-1.70.0-cp311-cp311-macosx_10_14_universal2.whl", hash = "sha256:dbe41ad140df911e796d4463168e33ef80a24f5d21ef4d1e310553fcd2c4a386", size = 11472027 }, - { url = "https://files.pythonhosted.org/packages/7e/32/8538bb2ace5cd72da7126d1c9804bf80b4fe3be70e53e2d55675c24961a8/grpcio-1.70.0-cp311-cp311-manylinux_2_17_aarch64.whl", hash = "sha256:5ea67c72101d687d44d9c56068328da39c9ccba634cabb336075fae2eab0d04b", size = 5707785 }, - { url = "https://files.pythonhosted.org/packages/ce/5c/a45f85f2a0dfe4a6429dee98717e0e8bd7bd3f604315493c39d9679ca065/grpcio-1.70.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cb5277db254ab7586769e490b7b22f4ddab3876c490da0a1a9d7c695ccf0bf77", size = 6331599 }, - { url = "https://files.pythonhosted.org/packages/9f/e5/5316b239380b8b2ad30373eb5bb25d9fd36c0375e94a98a0a60ea357d254/grpcio-1.70.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e7831a0fc1beeeb7759f737f5acd9fdcda520e955049512d68fda03d91186eea", size = 5940834 }, - { url = "https://files.pythonhosted.org/packages/05/33/dbf035bc6d167068b4a9f2929dfe0b03fb763f0f861ecb3bb1709a14cb65/grpcio-1.70.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:27cc75e22c5dba1fbaf5a66c778e36ca9b8ce850bf58a9db887754593080d839", size = 6641191 }, - { url = "https://files.pythonhosted.org/packages/4c/c4/684d877517e5bfd6232d79107e5a1151b835e9f99051faef51fed3359ec4/grpcio-1.70.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d63764963412e22f0491d0d32833d71087288f4e24cbcddbae82476bfa1d81fd", size = 6198744 }, - { url = "https://files.pythonhosted.org/packages/e9/43/92fe5eeaf340650a7020cfb037402c7b9209e7a0f3011ea1626402219034/grpcio-1.70.0-cp311-cp311-win32.whl", hash = "sha256:bb491125103c800ec209d84c9b51f1c60ea456038e4734688004f377cfacc113", size = 3617111 }, - { url = "https://files.pythonhosted.org/packages/55/15/b6cf2c9515c028aff9da6984761a3ab484a472b0dc6435fcd07ced42127d/grpcio-1.70.0-cp311-cp311-win_amd64.whl", hash = "sha256:d24035d49e026353eb042bf7b058fb831db3e06d52bee75c5f2f3ab453e71aca", size = 4304604 }, - { url = "https://files.pythonhosted.org/packages/4c/a4/ddbda79dd176211b518f0f3795af78b38727a31ad32bc149d6a7b910a731/grpcio-1.70.0-cp312-cp312-linux_armv7l.whl", hash = "sha256:ef4c14508299b1406c32bdbb9fb7b47612ab979b04cf2b27686ea31882387cff", size = 5198135 }, - { url = "https://files.pythonhosted.org/packages/30/5c/60eb8a063ea4cb8d7670af8fac3f2033230fc4b75f62669d67c66ac4e4b0/grpcio-1.70.0-cp312-cp312-macosx_10_14_universal2.whl", hash = "sha256:aa47688a65643afd8b166928a1da6247d3f46a2784d301e48ca1cc394d2ffb40", size = 11447529 }, - { url = "https://files.pythonhosted.org/packages/fb/b9/1bf8ab66729f13b44e8f42c9de56417d3ee6ab2929591cfee78dce749b57/grpcio-1.70.0-cp312-cp312-manylinux_2_17_aarch64.whl", hash = "sha256:880bfb43b1bb8905701b926274eafce5c70a105bc6b99e25f62e98ad59cb278e", size = 5664484 }, - { url = "https://files.pythonhosted.org/packages/d1/06/2f377d6906289bee066d96e9bdb91e5e96d605d173df9bb9856095cccb57/grpcio-1.70.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9e654c4b17d07eab259d392e12b149c3a134ec52b11ecdc6a515b39aceeec898", size = 6303739 }, - { url = "https://files.pythonhosted.org/packages/ae/50/64c94cfc4db8d9ed07da71427a936b5a2bd2b27c66269b42fbda82c7c7a4/grpcio-1.70.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2394e3381071045a706ee2eeb6e08962dd87e8999b90ac15c55f56fa5a8c9597", size = 5910417 }, - { url = "https://files.pythonhosted.org/packages/53/89/8795dfc3db4389c15554eb1765e14cba8b4c88cc80ff828d02f5572965af/grpcio-1.70.0-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:b3c76701428d2df01964bc6479422f20e62fcbc0a37d82ebd58050b86926ef8c", size = 6626797 }, - { url = "https://files.pythonhosted.org/packages/9c/b2/6a97ac91042a2c59d18244c479ee3894e7fb6f8c3a90619bb5a7757fa30c/grpcio-1.70.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:ac073fe1c4cd856ebcf49e9ed6240f4f84d7a4e6ee95baa5d66ea05d3dd0df7f", size = 6190055 }, - { url = "https://files.pythonhosted.org/packages/86/2b/28db55c8c4d156053a8c6f4683e559cd0a6636f55a860f87afba1ac49a51/grpcio-1.70.0-cp312-cp312-win32.whl", hash = "sha256:cd24d2d9d380fbbee7a5ac86afe9787813f285e684b0271599f95a51bce33528", size = 3600214 }, - { url = "https://files.pythonhosted.org/packages/17/c3/a7a225645a965029ed432e5b5e9ed959a574e62100afab553eef58be0e37/grpcio-1.70.0-cp312-cp312-win_amd64.whl", hash = "sha256:0495c86a55a04a874c7627fd33e5beaee771917d92c0e6d9d797628ac40e7655", size = 4292538 }, - { url = "https://files.pythonhosted.org/packages/68/38/66d0f32f88feaf7d83f8559cd87d899c970f91b1b8a8819b58226de0a496/grpcio-1.70.0-cp313-cp313-linux_armv7l.whl", hash = "sha256:aa573896aeb7d7ce10b1fa425ba263e8dddd83d71530d1322fd3a16f31257b4a", size = 5199218 }, - { url = "https://files.pythonhosted.org/packages/c1/96/947df763a0b18efb5cc6c2ae348e56d97ca520dc5300c01617b234410173/grpcio-1.70.0-cp313-cp313-macosx_10_14_universal2.whl", hash = "sha256:d405b005018fd516c9ac529f4b4122342f60ec1cee181788249372524e6db429", size = 11445983 }, - { url = "https://files.pythonhosted.org/packages/fd/5b/f3d4b063e51b2454bedb828e41f3485800889a3609c49e60f2296cc8b8e5/grpcio-1.70.0-cp313-cp313-manylinux_2_17_aarch64.whl", hash = "sha256:f32090238b720eb585248654db8e3afc87b48d26ac423c8dde8334a232ff53c9", size = 5663954 }, - { url = "https://files.pythonhosted.org/packages/bd/0b/dab54365fcedf63e9f358c1431885478e77d6f190d65668936b12dd38057/grpcio-1.70.0-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:dfa089a734f24ee5f6880c83d043e4f46bf812fcea5181dcb3a572db1e79e01c", size = 6304323 }, - { url = "https://files.pythonhosted.org/packages/76/a8/8f965a7171ddd336ce32946e22954aa1bbc6f23f095e15dadaa70604ba20/grpcio-1.70.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f19375f0300b96c0117aca118d400e76fede6db6e91f3c34b7b035822e06c35f", size = 5910939 }, - { url = "https://files.pythonhosted.org/packages/1b/05/0bbf68be8b17d1ed6f178435a3c0c12e665a1e6054470a64ce3cb7896596/grpcio-1.70.0-cp313-cp313-musllinux_1_1_i686.whl", hash = "sha256:7c73c42102e4a5ec76608d9b60227d917cea46dff4d11d372f64cbeb56d259d0", size = 6631405 }, - { url = "https://files.pythonhosted.org/packages/79/6a/5df64b6df405a1ed1482cb6c10044b06ec47fd28e87c2232dbcf435ecb33/grpcio-1.70.0-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:0a5c78d5198a1f0aa60006cd6eb1c912b4a1520b6a3968e677dbcba215fabb40", size = 6190982 }, - { url = "https://files.pythonhosted.org/packages/42/aa/aeaac87737e6d25d1048c53b8ec408c056d3ed0c922e7c5efad65384250c/grpcio-1.70.0-cp313-cp313-win32.whl", hash = "sha256:fe9dbd916df3b60e865258a8c72ac98f3ac9e2a9542dcb72b7a34d236242a5ce", size = 3598359 }, - { url = "https://files.pythonhosted.org/packages/1f/79/8edd2442d2de1431b4a3de84ef91c37002f12de0f9b577fb07b452989dbc/grpcio-1.70.0-cp313-cp313-win_amd64.whl", hash = "sha256:4119fed8abb7ff6c32e3d2255301e59c316c22d31ab812b3fbcbaf3d0d87cc68", size = 4293938 }, - { url = "https://files.pythonhosted.org/packages/9d/0e/64061c9746a2dd6e07cb0a0f3829f0a431344add77ec36397cc452541ff6/grpcio-1.70.0-cp39-cp39-linux_armv7l.whl", hash = "sha256:4f1937f47c77392ccd555728f564a49128b6a197a05a5cd527b796d36f3387d0", size = 5231123 }, - { url = "https://files.pythonhosted.org/packages/72/9f/c93501d5f361aecee0146ab19300d5acb1c2747b00217c641f06fffbcd62/grpcio-1.70.0-cp39-cp39-macosx_10_14_universal2.whl", hash = "sha256:0cd430b9215a15c10b0e7d78f51e8a39d6cf2ea819fd635a7214fae600b1da27", size = 11467217 }, - { url = "https://files.pythonhosted.org/packages/0a/1a/980d115b701023450a304881bf3f6309f6fb15787f9b78d2728074f3bf86/grpcio-1.70.0-cp39-cp39-manylinux_2_17_aarch64.whl", hash = "sha256:e27585831aa6b57b9250abaf147003e126cd3a6c6ca0c531a01996f31709bed1", size = 5710913 }, - { url = "https://files.pythonhosted.org/packages/a0/84/af420067029808f9790e98143b3dd0f943bebba434a4706755051a520c91/grpcio-1.70.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c1af8e15b0f0fe0eac75195992a63df17579553b0c4af9f8362cc7cc99ccddf4", size = 6330947 }, - { url = "https://files.pythonhosted.org/packages/24/1c/e1f06a7d29a1fa5053dcaf5352a50f8e1f04855fd194a65422a9d685d375/grpcio-1.70.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cbce24409beaee911c574a3d75d12ffb8c3e3dd1b813321b1d7a96bbcac46bf4", size = 5943913 }, - { url = "https://files.pythonhosted.org/packages/41/8f/de13838e4467519a50cd0693e98b0b2bcc81d656013c38a1dd7dcb801526/grpcio-1.70.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:ff4a8112a79464919bb21c18e956c54add43ec9a4850e3949da54f61c241a4a6", size = 6643236 }, - { url = "https://files.pythonhosted.org/packages/ac/73/d68c745d34e43a80440da4f3d79fa02c56cb118c2a26ba949f3cfd8316d7/grpcio-1.70.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:5413549fdf0b14046c545e19cfc4eb1e37e9e1ebba0ca390a8d4e9963cab44d2", size = 6199038 }, - { url = "https://files.pythonhosted.org/packages/7e/dd/991f100b8c31636b4bb2a941dbbf54dbcc55d69c722cfa038c3d017eaa0c/grpcio-1.70.0-cp39-cp39-win32.whl", hash = "sha256:b745d2c41b27650095e81dea7091668c040457483c9bdb5d0d9de8f8eb25e59f", size = 3617512 }, - { url = "https://files.pythonhosted.org/packages/4d/80/1aa2ba791207a13e314067209b48e1a0893ed8d1f43ef012e194aaa6c2de/grpcio-1.70.0-cp39-cp39-win_amd64.whl", hash = "sha256:a31d7e3b529c94e930a117b2175b2efd179d96eb3c7a21ccb0289a8ab05b645c", size = 4303506 }, + { url = "https://files.pythonhosted.org/packages/b0/44/5ca479c880b9f56c9a9502873ea500c09d1087dc868217a90724c24d83d0/grpcio-1.73.0-cp310-cp310-linux_armv7l.whl", hash = "sha256:d050197eeed50f858ef6c51ab09514856f957dba7b1f7812698260fc9cc417f6", size = 5365135 }, + { url = "https://files.pythonhosted.org/packages/8d/b7/78ff355cdb602ab01ea437d316846847e0c1f7d109596e5409402cc13156/grpcio-1.73.0-cp310-cp310-macosx_11_0_universal2.whl", hash = "sha256:ebb8d5f4b0200916fb292a964a4d41210de92aba9007e33d8551d85800ea16cb", size = 10609627 }, + { url = "https://files.pythonhosted.org/packages/8d/92/5111235062b9da0e3010e5fd2bdceb766113fcf60520f9c23eb651089dd7/grpcio-1.73.0-cp310-cp310-manylinux_2_17_aarch64.whl", hash = "sha256:c0811331b469e3f15dda5f90ab71bcd9681189a83944fd6dc908e2c9249041ef", size = 5803418 }, + { url = "https://files.pythonhosted.org/packages/76/fa/dbf3fca0b91fa044f1114b11adc3d4ccc18ab1ac278daa69d450fd9aaef2/grpcio-1.73.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:12787c791c3993d0ea1cc8bf90393647e9a586066b3b322949365d2772ba965b", size = 6444741 }, + { url = "https://files.pythonhosted.org/packages/44/e1/e7c830c1a29abd13f0e7e861c8db57a67db5cb8a1edc6b9d9cd44c26a1e5/grpcio-1.73.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2c17771e884fddf152f2a0df12478e8d02853e5b602a10a9a9f1f52fa02b1d32", size = 6040755 }, + { url = "https://files.pythonhosted.org/packages/b4/57/2eaccbfdd8298ab6bb4504600a4283260983a9db7378eb79c922fd559883/grpcio-1.73.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:275e23d4c428c26b51857bbd95fcb8e528783597207ec592571e4372b300a29f", size = 6132216 }, + { url = "https://files.pythonhosted.org/packages/81/a4/1bd2c59d7426ab640b121f42acb820ff7cd5c561d03e9c9164cb8431128e/grpcio-1.73.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:9ffc972b530bf73ef0f948f799482a1bf12d9b6f33406a8e6387c0ca2098a833", size = 6774779 }, + { url = "https://files.pythonhosted.org/packages/c6/64/70ee85055b4107acbe1af6a99ef6885e34db89083e53e5c27b8442e3aa38/grpcio-1.73.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:ebd8d269df64aff092b2cec5e015d8ae09c7e90888b5c35c24fdca719a2c9f35", size = 6304223 }, + { url = "https://files.pythonhosted.org/packages/06/02/4b3c373edccf29205205a6d329a267b9337ecbbf658bc70f0a18d63d0a50/grpcio-1.73.0-cp310-cp310-win32.whl", hash = "sha256:072d8154b8f74300ed362c01d54af8b93200c1a9077aeaea79828d48598514f1", size = 3679738 }, + { url = "https://files.pythonhosted.org/packages/30/7a/d6dab939cda2129e39a872ad48f61c9951567dcda8ab419b8de446315a68/grpcio-1.73.0-cp310-cp310-win_amd64.whl", hash = "sha256:ce953d9d2100e1078a76a9dc2b7338d5415924dc59c69a15bf6e734db8a0f1ca", size = 4340441 }, + { url = "https://files.pythonhosted.org/packages/dd/31/9de81fd12f7b27e6af403531b7249d76f743d58e0654e624b3df26a43ce2/grpcio-1.73.0-cp311-cp311-linux_armv7l.whl", hash = "sha256:51036f641f171eebe5fa7aaca5abbd6150f0c338dab3a58f9111354240fe36ec", size = 5363773 }, + { url = "https://files.pythonhosted.org/packages/32/9e/2cb78be357a7f1fc4942b81468ef3c7e5fd3df3ac010540459c10895a57b/grpcio-1.73.0-cp311-cp311-macosx_11_0_universal2.whl", hash = "sha256:d12bbb88381ea00bdd92c55aff3da3391fd85bc902c41275c8447b86f036ce0f", size = 10621912 }, + { url = "https://files.pythonhosted.org/packages/59/2f/b43954811a2e218a2761c0813800773ac0ca187b94fd2b8494e8ef232dc8/grpcio-1.73.0-cp311-cp311-manylinux_2_17_aarch64.whl", hash = "sha256:483c507c2328ed0e01bc1adb13d1eada05cc737ec301d8e5a8f4a90f387f1790", size = 5807985 }, + { url = "https://files.pythonhosted.org/packages/1b/bf/68e9f47e7ee349ffee712dcd907ee66826cf044f0dec7ab517421e56e857/grpcio-1.73.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c201a34aa960c962d0ce23fe5f423f97e9d4b518ad605eae6d0a82171809caaa", size = 6448218 }, + { url = "https://files.pythonhosted.org/packages/af/dd/38ae43dd58480d609350cf1411fdac5c2ebb243e2c770f6f7aa3773d5e29/grpcio-1.73.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:859f70c8e435e8e1fa060e04297c6818ffc81ca9ebd4940e180490958229a45a", size = 6044343 }, + { url = "https://files.pythonhosted.org/packages/93/44/b6770b55071adb86481f36dae87d332fcad883b7f560bba9a940394ba018/grpcio-1.73.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:e2459a27c6886e7e687e4e407778425f3c6a971fa17a16420227bda39574d64b", size = 6135858 }, + { url = "https://files.pythonhosted.org/packages/d3/9f/63de49fcef436932fcf0ffb978101a95c83c177058dbfb56dbf30ab81659/grpcio-1.73.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:e0084d4559ee3dbdcce9395e1bc90fdd0262529b32c417a39ecbc18da8074ac7", size = 6775806 }, + { url = "https://files.pythonhosted.org/packages/4d/67/c11f1953469162e958f09690ec3a9be3fdb29dea7f5661362a664f9d609a/grpcio-1.73.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:ef5fff73d5f724755693a464d444ee0a448c6cdfd3c1616a9223f736c622617d", size = 6308413 }, + { url = "https://files.pythonhosted.org/packages/ba/6a/9dd04426337db07f28bd51a986b7a038ba56912c81b5bb1083c17dd63404/grpcio-1.73.0-cp311-cp311-win32.whl", hash = "sha256:965a16b71a8eeef91fc4df1dc40dc39c344887249174053814f8a8e18449c4c3", size = 3678972 }, + { url = "https://files.pythonhosted.org/packages/04/8b/8c0a8a4fdc2e7977d325eafc587c9cf468039693ac23ad707153231d3cb2/grpcio-1.73.0-cp311-cp311-win_amd64.whl", hash = "sha256:b71a7b4483d1f753bbc11089ff0f6fa63b49c97a9cc20552cded3fcad466d23b", size = 4342967 }, + { url = "https://files.pythonhosted.org/packages/9d/4d/e938f3a0e51a47f2ce7e55f12f19f316e7074770d56a7c2765e782ec76bc/grpcio-1.73.0-cp312-cp312-linux_armv7l.whl", hash = "sha256:fb9d7c27089d9ba3746f18d2109eb530ef2a37452d2ff50f5a6696cd39167d3b", size = 5334911 }, + { url = "https://files.pythonhosted.org/packages/13/56/f09c72c43aa8d6f15a71f2c63ebdfac9cf9314363dea2598dc501d8370db/grpcio-1.73.0-cp312-cp312-macosx_11_0_universal2.whl", hash = "sha256:128ba2ebdac41e41554d492b82c34586a90ebd0766f8ebd72160c0e3a57b9155", size = 10601460 }, + { url = "https://files.pythonhosted.org/packages/20/e3/85496edc81e41b3c44ebefffc7bce133bb531120066877df0f910eabfa19/grpcio-1.73.0-cp312-cp312-manylinux_2_17_aarch64.whl", hash = "sha256:068ecc415f79408d57a7f146f54cdf9f0acb4b301a52a9e563973dc981e82f3d", size = 5759191 }, + { url = "https://files.pythonhosted.org/packages/88/cc/fef74270a6d29f35ad744bfd8e6c05183f35074ff34c655a2c80f3b422b2/grpcio-1.73.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6ddc1cfb2240f84d35d559ade18f69dcd4257dbaa5ba0de1a565d903aaab2968", size = 6409961 }, + { url = "https://files.pythonhosted.org/packages/b0/e6/13cfea15e3b8f79c4ae7b676cb21fab70978b0fde1e1d28bb0e073291290/grpcio-1.73.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e53007f70d9783f53b41b4cf38ed39a8e348011437e4c287eee7dd1d39d54b2f", size = 6003948 }, + { url = "https://files.pythonhosted.org/packages/c2/ed/b1a36dad4cc0dbf1f83f6d7b58825fefd5cc9ff3a5036e46091335649473/grpcio-1.73.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:4dd8d8d092efede7d6f48d695ba2592046acd04ccf421436dd7ed52677a9ad29", size = 6103788 }, + { url = "https://files.pythonhosted.org/packages/e7/c8/d381433d3d46d10f6858126d2d2245ef329e30f3752ce4514c93b95ca6fc/grpcio-1.73.0-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:70176093d0a95b44d24baa9c034bb67bfe2b6b5f7ebc2836f4093c97010e17fd", size = 6749508 }, + { url = "https://files.pythonhosted.org/packages/87/0a/ff0c31dbd15e63b34320efafac647270aa88c31aa19ff01154a73dc7ce86/grpcio-1.73.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:085ebe876373ca095e24ced95c8f440495ed0b574c491f7f4f714ff794bbcd10", size = 6284342 }, + { url = "https://files.pythonhosted.org/packages/fd/73/f762430c0ba867403b9d6e463afe026bf019bd9206eee753785239719273/grpcio-1.73.0-cp312-cp312-win32.whl", hash = "sha256:cfc556c1d6aef02c727ec7d0016827a73bfe67193e47c546f7cadd3ee6bf1a60", size = 3669319 }, + { url = "https://files.pythonhosted.org/packages/10/8b/3411609376b2830449cf416f457ad9d2aacb7f562e1b90fdd8bdedf26d63/grpcio-1.73.0-cp312-cp312-win_amd64.whl", hash = "sha256:bbf45d59d090bf69f1e4e1594832aaf40aa84b31659af3c5e2c3f6a35202791a", size = 4335596 }, + { url = "https://files.pythonhosted.org/packages/60/da/6f3f7a78e5455c4cbe87c85063cc6da05d65d25264f9d4aed800ece46294/grpcio-1.73.0-cp313-cp313-linux_armv7l.whl", hash = "sha256:da1d677018ef423202aca6d73a8d3b2cb245699eb7f50eb5f74cae15a8e1f724", size = 5335867 }, + { url = "https://files.pythonhosted.org/packages/53/14/7d1f2526b98b9658d7be0bb163fd78d681587de6709d8b0c74b4b481b013/grpcio-1.73.0-cp313-cp313-macosx_11_0_universal2.whl", hash = "sha256:36bf93f6a657f37c131d9dd2c391b867abf1426a86727c3575393e9e11dadb0d", size = 10595587 }, + { url = "https://files.pythonhosted.org/packages/02/24/a293c398ae44e741da1ed4b29638edbb002258797b07a783f65506165b4c/grpcio-1.73.0-cp313-cp313-manylinux_2_17_aarch64.whl", hash = "sha256:d84000367508ade791d90c2bafbd905574b5ced8056397027a77a215d601ba15", size = 5765793 }, + { url = "https://files.pythonhosted.org/packages/e1/24/d84dbd0b5bf36fb44922798d525a85cefa2ffee7b7110e61406e9750ed15/grpcio-1.73.0-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c98ba1d928a178ce33f3425ff823318040a2b7ef875d30a0073565e5ceb058d9", size = 6415494 }, + { url = "https://files.pythonhosted.org/packages/5e/85/c80dc65aed8e9dce3d54688864bac45331d9c7600985541f18bd5cb301d4/grpcio-1.73.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a73c72922dfd30b396a5f25bb3a4590195ee45ecde7ee068acb0892d2900cf07", size = 6007279 }, + { url = "https://files.pythonhosted.org/packages/37/fc/207c00a4c6fa303d26e2cbd62fbdb0582facdfd08f55500fd83bf6b0f8db/grpcio-1.73.0-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:10e8edc035724aba0346a432060fd192b42bd03675d083c01553cab071a28da5", size = 6105505 }, + { url = "https://files.pythonhosted.org/packages/72/35/8fe69af820667b87ebfcb24214e42a1d53da53cb39edd6b4f84f6b36da86/grpcio-1.73.0-cp313-cp313-musllinux_1_1_i686.whl", hash = "sha256:f5cdc332b503c33b1643b12ea933582c7b081957c8bc2ea4cc4bc58054a09288", size = 6753792 }, + { url = "https://files.pythonhosted.org/packages/e2/d8/738c77c1e821e350da4a048849f695ff88a02b291f8c69db23908867aea6/grpcio-1.73.0-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:07ad7c57233c2109e4ac999cb9c2710c3b8e3f491a73b058b0ce431f31ed8145", size = 6287593 }, + { url = "https://files.pythonhosted.org/packages/09/ec/8498eabc018fa39ae8efe5e47e3f4c1bc9ed6281056713871895dc998807/grpcio-1.73.0-cp313-cp313-win32.whl", hash = "sha256:0eb5df4f41ea10bda99a802b2a292d85be28958ede2a50f2beb8c7fc9a738419", size = 3668637 }, + { url = "https://files.pythonhosted.org/packages/d7/35/347db7d2e7674b621afd21b12022e7f48c7b0861b5577134b4e939536141/grpcio-1.73.0-cp313-cp313-win_amd64.whl", hash = "sha256:38cf518cc54cd0c47c9539cefa8888549fcc067db0b0c66a46535ca8032020c4", size = 4335872 }, + { url = "https://files.pythonhosted.org/packages/f6/93/2a26dca7a00237704af3b186b1027940c4039bca4769ffe408466adeb3d1/grpcio-1.73.0-cp39-cp39-linux_armv7l.whl", hash = "sha256:1284850607901cfe1475852d808e5a102133461ec9380bc3fc9ebc0686ee8e32", size = 5364321 }, + { url = "https://files.pythonhosted.org/packages/c1/29/a1fbb0ff0f429bf5d9e155fc7961bbbd623630e75ea03839ad9d4e0c0a89/grpcio-1.73.0-cp39-cp39-macosx_11_0_universal2.whl", hash = "sha256:0e092a4b28eefb63eec00d09ef33291cd4c3a0875cde29aec4d11d74434d222c", size = 10613796 }, + { url = "https://files.pythonhosted.org/packages/69/bc/9469ed8055a3f851515e6027eb3e6ffb9ce472a27f0f33891f58bb1a6911/grpcio-1.73.0-cp39-cp39-manylinux_2_17_aarch64.whl", hash = "sha256:33577fe7febffe8ebad458744cfee8914e0c10b09f0ff073a6b149a84df8ab8f", size = 5804194 }, + { url = "https://files.pythonhosted.org/packages/93/73/888cf286c92ffd75e9126e4b7e3eb3a44757ee007b6bea5c70f902b33009/grpcio-1.73.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:60813d8a16420d01fa0da1fc7ebfaaa49a7e5051b0337cd48f4f950eb249a08e", size = 6445803 }, + { url = "https://files.pythonhosted.org/packages/fa/a0/04db21da4277b2621a623715acb009b50ce7754c03fdcf3dba30f7d0c3de/grpcio-1.73.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2a9c957dc65e5d474378d7bcc557e9184576605d4b4539e8ead6e351d7ccce20", size = 6041526 }, + { url = "https://files.pythonhosted.org/packages/02/11/1c251e11000e5f81f9a98a6d71baf7a3ade65dafb480d24443f9109c46cd/grpcio-1.73.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:3902b71407d021163ea93c70c8531551f71ae742db15b66826cf8825707d2908", size = 6133415 }, + { url = "https://files.pythonhosted.org/packages/68/27/d350587b15ee91e90f1c9ad3de0d959a50dcc0747b9737bf75775b70d098/grpcio-1.73.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:1dd7fa7276dcf061e2d5f9316604499eea06b1b23e34a9380572d74fe59915a8", size = 6775283 }, + { url = "https://files.pythonhosted.org/packages/22/0f/60f14920e2a228c1d0a63869df17a74216d0f0edc9bb8127bc5a701b1dcf/grpcio-1.73.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:2d1510c4ea473110cb46a010555f2c1a279d1c256edb276e17fa571ba1e8927c", size = 6305297 }, + { url = "https://files.pythonhosted.org/packages/88/c6/ed26ad1662352b6daf86e7b1c3c6a73df7cb87e87b4837596f624a112242/grpcio-1.73.0-cp39-cp39-win32.whl", hash = "sha256:d0a1517b2005ba1235a1190b98509264bf72e231215dfeef8db9a5a92868789e", size = 3680758 }, + { url = "https://files.pythonhosted.org/packages/19/53/a2fddbceabcbec03f850ca6074a08c0dd4e35ea62982280136cc6c2bc7b9/grpcio-1.73.0-cp39-cp39-win_amd64.whl", hash = "sha256:6228f7eb6d9f785f38b589d49957fca5df3d5b5349e77d2d89b14e390165344c", size = 4342362 }, ] [[package]] @@ -259,9 +264,8 @@ dependencies = [ [package.metadata] requires-dist = [ - { name = "googleapis-common-protos", specifier = "~=1.52" }, - { name = "grpcio", marker = "python_full_version < '3.13'", specifier = ">=1.63.2,<2.0.0" }, - { name = "grpcio", marker = "python_full_version >= '3.13'", specifier = ">=1.66.2,<2.0.0" }, + { name = "googleapis-common-protos", specifier = "~=1.70" }, + { name = "grpcio", specifier = ">=1.73.0,<2.0.0" }, { name = "opentelemetry-api", editable = "opentelemetry-api" }, { name = "opentelemetry-exporter-otlp-proto-common", editable = "exporter/opentelemetry-exporter-otlp-proto-common" }, { name = "opentelemetry-proto", editable = "opentelemetry-proto" }, @@ -357,7 +361,7 @@ dependencies = [ ] [package.metadata] -requires-dist = [{ name = "protobuf", specifier = ">=5.0,<6.0" }] +requires-dist = [{ name = "protobuf", specifier = ">=6.0,<7.0" }] [[package]] name = "opentelemetry-python" @@ -451,18 +455,18 @@ wheels = [ [[package]] name = "protobuf" -version = "5.29.3" +version = "6.31.1" source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/f7/d1/e0a911544ca9993e0f17ce6d3cc0932752356c1b0a834397f28e63479344/protobuf-5.29.3.tar.gz", hash = "sha256:5da0f41edaf117bde316404bad1a486cb4ededf8e4a54891296f648e8e076620", size = 424945 } +sdist = { url = "https://files.pythonhosted.org/packages/52/f3/b9655a711b32c19720253f6f06326faf90580834e2e83f840472d752bc8b/protobuf-6.31.1.tar.gz", hash = "sha256:d8cac4c982f0b957a4dc73a80e2ea24fab08e679c0de9deb835f4a12d69aca9a", size = 441797 } wheels = [ - { url = "https://files.pythonhosted.org/packages/dc/7a/1e38f3cafa022f477ca0f57a1f49962f21ad25850c3ca0acd3b9d0091518/protobuf-5.29.3-cp310-abi3-win32.whl", hash = "sha256:3ea51771449e1035f26069c4c7fd51fba990d07bc55ba80701c78f886bf9c888", size = 422708 }, - { url = "https://files.pythonhosted.org/packages/61/fa/aae8e10512b83de633f2646506a6d835b151edf4b30d18d73afd01447253/protobuf-5.29.3-cp310-abi3-win_amd64.whl", hash = "sha256:a4fa6f80816a9a0678429e84973f2f98cbc218cca434abe8db2ad0bffc98503a", size = 434508 }, - { url = "https://files.pythonhosted.org/packages/dd/04/3eaedc2ba17a088961d0e3bd396eac764450f431621b58a04ce898acd126/protobuf-5.29.3-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:a8434404bbf139aa9e1300dbf989667a83d42ddda9153d8ab76e0d5dcaca484e", size = 417825 }, - { url = "https://files.pythonhosted.org/packages/4f/06/7c467744d23c3979ce250397e26d8ad8eeb2bea7b18ca12ad58313c1b8d5/protobuf-5.29.3-cp38-abi3-manylinux2014_aarch64.whl", hash = "sha256:daaf63f70f25e8689c072cfad4334ca0ac1d1e05a92fc15c54eb9cf23c3efd84", size = 319573 }, - { url = "https://files.pythonhosted.org/packages/a8/45/2ebbde52ad2be18d3675b6bee50e68cd73c9e0654de77d595540b5129df8/protobuf-5.29.3-cp38-abi3-manylinux2014_x86_64.whl", hash = "sha256:c027e08a08be10b67c06bf2370b99c811c466398c357e615ca88c91c07f0910f", size = 319672 }, - { url = "https://files.pythonhosted.org/packages/85/a6/bf65a38f8be5ab8c3b575822acfd338702fdf7ac9abd8c81630cc7c9f4bd/protobuf-5.29.3-cp39-cp39-win32.whl", hash = "sha256:0eb32bfa5219fc8d4111803e9a690658aa2e6366384fd0851064b963b6d1f2a7", size = 422676 }, - { url = "https://files.pythonhosted.org/packages/ac/e2/48d46adc86369ff092eaece3e537f76b3baaab45ca3dde257838cde831d2/protobuf-5.29.3-cp39-cp39-win_amd64.whl", hash = "sha256:6ce8cc3389a20693bfde6c6562e03474c40851b44975c9b2bf6df7d8c4f864da", size = 434593 }, - { url = "https://files.pythonhosted.org/packages/fd/b2/ab07b09e0f6d143dfb839693aa05765257bceaa13d03bf1a696b78323e7a/protobuf-5.29.3-py3-none-any.whl", hash = "sha256:0a18ed4a24198528f2333802eb075e59dea9d679ab7a6c5efb017a59004d849f", size = 172550 }, + { url = "https://files.pythonhosted.org/packages/f3/6f/6ab8e4bf962fd5570d3deaa2d5c38f0a363f57b4501047b5ebeb83ab1125/protobuf-6.31.1-cp310-abi3-win32.whl", hash = "sha256:7fa17d5a29c2e04b7d90e5e32388b8bfd0e7107cd8e616feef7ed3fa6bdab5c9", size = 423603 }, + { url = "https://files.pythonhosted.org/packages/44/3a/b15c4347dd4bf3a1b0ee882f384623e2063bb5cf9fa9d57990a4f7df2fb6/protobuf-6.31.1-cp310-abi3-win_amd64.whl", hash = "sha256:426f59d2964864a1a366254fa703b8632dcec0790d8862d30034d8245e1cd447", size = 435283 }, + { url = "https://files.pythonhosted.org/packages/6a/c9/b9689a2a250264a84e66c46d8862ba788ee7a641cdca39bccf64f59284b7/protobuf-6.31.1-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:6f1227473dc43d44ed644425268eb7c2e488ae245d51c6866d19fe158e207402", size = 425604 }, + { url = "https://files.pythonhosted.org/packages/76/a1/7a5a94032c83375e4fe7e7f56e3976ea6ac90c5e85fac8576409e25c39c3/protobuf-6.31.1-cp39-abi3-manylinux2014_aarch64.whl", hash = "sha256:a40fc12b84c154884d7d4c4ebd675d5b3b5283e155f324049ae396b95ddebc39", size = 322115 }, + { url = "https://files.pythonhosted.org/packages/fa/b1/b59d405d64d31999244643d88c45c8241c58f17cc887e73bcb90602327f8/protobuf-6.31.1-cp39-abi3-manylinux2014_x86_64.whl", hash = "sha256:4ee898bf66f7a8b0bd21bce523814e6fbd8c6add948045ce958b73af7e8878c6", size = 321070 }, + { url = "https://files.pythonhosted.org/packages/b1/f0/4160dbd205eee8fdf8647d154e7ceaa9d25b3a877b6311274eb6dc896b75/protobuf-6.31.1-cp39-cp39-win32.whl", hash = "sha256:0414e3aa5a5f3ff423828e1e6a6e907d6c65c1d5b7e6e975793d5590bdeecc16", size = 423626 }, + { url = "https://files.pythonhosted.org/packages/09/34/13989eb9f482409ed821bfa3e34e6a3878b42607c38e7f7572b4cc825091/protobuf-6.31.1-cp39-cp39-win_amd64.whl", hash = "sha256:8764cf4587791e7564051b35524b72844f845ad0bb011704c3736cce762d8fe9", size = 435347 }, + { url = "https://files.pythonhosted.org/packages/f7/af/ab3c51ab7507a7325e98ffe691d9495ee3d3aa5f589afad65ec920d39821/protobuf-6.31.1-py3-none-any.whl", hash = "sha256:720a6c7e6b77288b85063569baae8536671b39f15cc22037ec7045658d80489e", size = 168724 }, ] [[package]]