From 1b14fe4ba0575ff30014fcd5e8940b3e16570bcf Mon Sep 17 00:00:00 2001 From: Lalit Kumar Bhasin Date: Mon, 2 Jun 2025 14:53:08 +0000 Subject: [PATCH 1/2] initial commit --- .../src/proto/opentelemetry-proto | 2 +- ...ntelemetry.proto.profiles.v1development.rs | 79 +++++++++++-------- 2 files changed, 46 insertions(+), 35 deletions(-) diff --git a/opentelemetry-proto/src/proto/opentelemetry-proto b/opentelemetry-proto/src/proto/opentelemetry-proto index f7676e8120..8654ab7a5a 160000 --- a/opentelemetry-proto/src/proto/opentelemetry-proto +++ b/opentelemetry-proto/src/proto/opentelemetry-proto @@ -1 +1 @@ -Subproject commit f7676e812035aa8a67478c6d740cb09f4c50f86a +Subproject commit 8654ab7a5a43ca25fe8046e59dcd6935c3f76de0 diff --git a/opentelemetry-proto/src/proto/tonic/opentelemetry.proto.profiles.v1development.rs b/opentelemetry-proto/src/proto/tonic/opentelemetry.proto.profiles.v1development.rs index 5851887f11..586f13b1e6 100644 --- a/opentelemetry-proto/src/proto/tonic/opentelemetry.proto.profiles.v1development.rs +++ b/opentelemetry-proto/src/proto/tonic/opentelemetry.proto.profiles.v1development.rs @@ -1,4 +1,35 @@ // This file is @generated by prost-build. +/// ProfilesDictionary represents the profiles data shared across the +/// entire message being sent. +#[cfg_attr(feature = "with-schemars", derive(schemars::JsonSchema))] +#[cfg_attr(feature = "with-serde", derive(serde::Serialize, serde::Deserialize))] +#[cfg_attr(feature = "with-serde", serde(rename_all = "camelCase"))] +#[derive(Clone, PartialEq, ::prost::Message)] +pub struct ProfilesDictionary { + /// Mappings from address ranges to the image/binary/library mapped + /// into that address range referenced by locations via Location.mapping_index. + #[prost(message, repeated, tag = "1")] + pub mapping_table: ::prost::alloc::vec::Vec, + /// Locations referenced by samples via Profile.location_indices. + #[prost(message, repeated, tag = "2")] + pub location_table: ::prost::alloc::vec::Vec, + /// Functions referenced by locations via Line.function_index. + #[prost(message, repeated, tag = "3")] + pub function_table: ::prost::alloc::vec::Vec, + /// Links referenced by samples via Sample.link_index. + #[prost(message, repeated, tag = "4")] + pub link_table: ::prost::alloc::vec::Vec, + /// A common table for strings referenced by various messages. + /// string_table\[0\] must always be "". + #[prost(string, repeated, tag = "5")] + pub string_table: ::prost::alloc::vec::Vec<::prost::alloc::string::String>, + /// A common table for attributes referenced by various messages. + #[prost(message, repeated, tag = "6")] + pub attribute_table: ::prost::alloc::vec::Vec, + /// Represents a mapping between Attribute Keys and Units. + #[prost(message, repeated, tag = "7")] + pub attribute_units: ::prost::alloc::vec::Vec, +} /// ProfilesData represents the profiles data that can be stored in persistent storage, /// OR can be embedded by other protocols that transfer OTLP profiles data but do not /// implement the OTLP protocol. @@ -23,29 +54,9 @@ pub struct ProfilesData { /// Resource.attributes and semantic conventions. #[prost(message, repeated, tag = "1")] pub resource_profiles: ::prost::alloc::vec::Vec, - /// Mappings from address ranges to the image/binary/library mapped - /// into that address range referenced by locations via Location.mapping_index. - #[prost(message, repeated, tag = "2")] - pub mapping_table: ::prost::alloc::vec::Vec, - /// Locations referenced by samples via Profile.location_indices. - #[prost(message, repeated, tag = "3")] - pub location_table: ::prost::alloc::vec::Vec, - /// Functions referenced by locations via Line.function_index. - #[prost(message, repeated, tag = "4")] - pub function_table: ::prost::alloc::vec::Vec, - /// Links referenced by samples via Sample.link_index. - #[prost(message, repeated, tag = "5")] - pub link_table: ::prost::alloc::vec::Vec, - /// A common table for strings referenced by various messages. - /// string_table\[0\] must always be "". - #[prost(string, repeated, tag = "6")] - pub string_table: ::prost::alloc::vec::Vec<::prost::alloc::string::String>, - /// A common table for attributes referenced by various messages. - #[prost(message, repeated, tag = "7")] - pub attribute_table: ::prost::alloc::vec::Vec, - /// Represents a mapping between Attribute Keys and Units. - #[prost(message, repeated, tag = "8")] - pub attribute_units: ::prost::alloc::vec::Vec, + /// One instance of ProfilesDictionary + #[prost(message, optional, tag = "2")] + pub dictionary: ::core::option::Option, } /// A collection of ScopeProfiles from a Resource. #[cfg_attr(feature = "with-schemars", derive(schemars::JsonSchema))] @@ -116,7 +127,7 @@ pub struct Profile { /// The set of samples recorded in this profile. #[prost(message, repeated, tag = "2")] pub sample: ::prost::alloc::vec::Vec, - /// References to locations in ProfilesData.location_table. + /// References to locations in ProfilesDictionary.location_table. #[prost(int32, repeated, tag = "3")] pub location_indices: ::prost::alloc::vec::Vec, /// Time of collection (UTC) represented as nanoseconds past the epoch. @@ -145,7 +156,7 @@ pub struct Profile { /// for human-friendly content. The profile must stay functional if this field /// is cleaned. /// - /// Indices into ProfilesData.string_table. + /// Indices into ProfilesDictionary.string_table. #[prost(int32, repeated, tag = "8")] pub comment_strindices: ::prost::alloc::vec::Vec, /// Index into the sample_type array to the default sample type. @@ -230,10 +241,10 @@ pub struct Link { #[cfg_attr(feature = "with-serde", serde(rename_all = "camelCase"))] #[derive(Clone, Copy, PartialEq, ::prost::Message)] pub struct ValueType { - /// Index into ProfilesData.string_table. + /// Index into ProfilesDictionary.string_table. #[prost(int32, tag = "1")] pub type_strindex: i32, - /// Index into ProfilesData.string_table. + /// Index into ProfilesDictionary.string_table. #[prost(int32, tag = "2")] pub unit_strindex: i32, #[prost(enumeration = "AggregationTemporality", tag = "3")] @@ -263,10 +274,10 @@ pub struct Sample { /// lists of the originals. #[prost(int64, repeated, tag = "3")] pub value: ::prost::alloc::vec::Vec, - /// References to attributes in ProfilesData.attribute_table. \[optional\] + /// References to attributes in ProfilesDictionary.attribute_table. \[optional\] #[prost(int32, repeated, tag = "4")] pub attribute_indices: ::prost::alloc::vec::Vec, - /// Reference to link in ProfilesData.link_table. \[optional\] + /// Reference to link in ProfilesDictionary.link_table. \[optional\] #[prost(int32, optional, tag = "5")] pub link_index: ::core::option::Option, /// Timestamps associated with Sample represented in nanoseconds. These timestamps are expected @@ -301,10 +312,10 @@ pub struct Mapping { /// disk for the main binary and shared libraries, or virtual /// abstractions like "\[vdso\]". /// - /// Index into ProfilesData.string_table. + /// Index into ProfilesDictionary.string_table. #[prost(int32, tag = "4")] pub filename_strindex: i32, - /// References to attributes in ProfilesData.attribute_table. \[optional\] + /// References to attributes in ProfilesDictionary.attribute_table. \[optional\] #[prost(int32, repeated, tag = "5")] pub attribute_indices: ::prost::alloc::vec::Vec, /// The following fields indicate the resolution of symbolic info. @@ -323,7 +334,7 @@ pub struct Mapping { #[cfg_attr(feature = "with-serde", serde(rename_all = "camelCase"))] #[derive(Clone, PartialEq, ::prost::Message)] pub struct Location { - /// Reference to mapping in ProfilesData.mapping_table. + /// Reference to mapping in ProfilesDictionary.mapping_table. /// It can be unset if the mapping is unknown or not applicable for /// this profile type. #[prost(int32, optional, tag = "1")] @@ -351,7 +362,7 @@ pub struct Location { /// profile changes. #[prost(bool, tag = "4")] pub is_folded: bool, - /// References to attributes in ProfilesData.attribute_table. \[optional\] + /// References to attributes in ProfilesDictionary.attribute_table. \[optional\] #[prost(int32, repeated, tag = "5")] pub attribute_indices: ::prost::alloc::vec::Vec, } @@ -361,7 +372,7 @@ pub struct Location { #[cfg_attr(feature = "with-serde", serde(rename_all = "camelCase"))] #[derive(Clone, Copy, PartialEq, ::prost::Message)] pub struct Line { - /// Reference to function in ProfilesData.function_table. + /// Reference to function in ProfilesDictionary.function_table. #[prost(int32, tag = "1")] pub function_index: i32, /// Line number in source code. 0 means unset. From 45d4a3237f36ecfa06acfa2fba7187d9a44c1663 Mon Sep 17 00:00:00 2001 From: Lalit Kumar Bhasin Date: Mon, 2 Jun 2025 16:34:37 +0000 Subject: [PATCH 2/2] add changeloG --- opentelemetry-proto/CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/opentelemetry-proto/CHANGELOG.md b/opentelemetry-proto/CHANGELOG.md index 1a47dc0d1a..abaabde44c 100644 --- a/opentelemetry-proto/CHANGELOG.md +++ b/opentelemetry-proto/CHANGELOG.md @@ -2,6 +2,8 @@ ## vNext +- Update proto definitions to v1.7.0. + ## 0.30.0 Released 2025-May-23