From c88e5fd86e0f18da46379fef5132548408ce75a8 Mon Sep 17 00:00:00 2001 From: Lalit Kumar Bhasin Date: Wed, 19 Jun 2024 12:03:50 -0700 Subject: [PATCH] populate scope.version and scope.attributes only if target is present --- opentelemetry-proto/src/transform/common.rs | 50 +++++++++++++-------- 1 file changed, 32 insertions(+), 18 deletions(-) diff --git a/opentelemetry-proto/src/transform/common.rs b/opentelemetry-proto/src/transform/common.rs index 2d95bc0c96..ff42479288 100644 --- a/opentelemetry-proto/src/transform/common.rs +++ b/opentelemetry-proto/src/transform/common.rs @@ -55,13 +55,20 @@ pub mod tonic { ), ) -> Self { let (library, target) = data; - InstrumentationScope { - name: target - .map(|t| t.to_string()) - .unwrap_or_else(|| library.name.into_owned()), - version: library.version.map(Cow::into_owned).unwrap_or_default(), - attributes: Attributes::from(library.attributes).0, - ..Default::default() + if let Some(t) = target { + InstrumentationScope { + name: t.to_string(), + version: String::new(), + attributes: vec![], + ..Default::default() + } + } else { + InstrumentationScope { + name: library.name.into_owned(), + version: library.version.map(Cow::into_owned).unwrap_or_default(), + attributes: Attributes::from(library.attributes).0, + ..Default::default() + } } } } @@ -79,17 +86,24 @@ pub mod tonic { ), ) -> Self { let (library, target) = data; - InstrumentationScope { - name: target - .map(|t| t.to_string()) - .unwrap_or_else(|| library.name.to_string()), - version: library - .version - .as_ref() - .map(ToString::to_string) - .unwrap_or_default(), - attributes: Attributes::from(library.attributes.clone()).0, - ..Default::default() + if let Some(t) = target { + InstrumentationScope { + name: t.to_string(), + version: String::new(), + attributes: vec![], + ..Default::default() + } + } else { + InstrumentationScope { + name: library.name.to_string(), + version: library + .version + .as_ref() + .map(ToString::to_string) + .unwrap_or_default(), + attributes: Attributes::from(library.attributes.clone()).0, + ..Default::default() + } } } }