From 4e0b8bf5705fd9dd3ea9ff65e715a43fa835d11c Mon Sep 17 00:00:00 2001 From: Pierre Massat Date: Fri, 20 Sep 2024 19:28:03 -0400 Subject: [PATCH 1/2] fix(profiles): Use the duration reported by the profiler --- relay-profiling/src/android.rs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/relay-profiling/src/android.rs b/relay-profiling/src/android.rs index b1c54b6386..6c17d40ec6 100644 --- a/relay-profiling/src/android.rs +++ b/relay-profiling/src/android.rs @@ -153,7 +153,7 @@ impl AndroidProfilingEvent { } fn has_transaction_metadata(&self) -> bool { - !self.metadata.transaction_name.is_empty() && self.metadata.duration_ns > 0 + !self.metadata.transaction_name.is_empty() } } @@ -170,7 +170,6 @@ fn parse_profile(payload: &[u8]) -> Result // this is for compatibility profile.metadata.active_thread_id = transaction.active_thread_id; - profile.metadata.duration_ns = transaction.duration_ns(); profile.metadata.trace_id = transaction.trace_id; profile.metadata.transaction_id = transaction.id; profile @@ -207,6 +206,9 @@ fn parse_profile(payload: &[u8]) -> Result return Err(ProfileError::DurationIsTooLong); } + // Use duration given by the profiler and not reported by the SDK. + profile.metadata.duration_ns = profile.profile.elapsed_time.as_nanos() as u64; + Ok(profile) } From 131855361f618eda6da0d3bcc2ed7a52f6fe68e5 Mon Sep 17 00:00:00 2001 From: Pierre Massat Date: Fri, 20 Sep 2024 19:29:07 -0400 Subject: [PATCH 2/2] fix(profiles): Use the duration reported by the profiler --- relay-profiling/src/android.rs | 1 - 1 file changed, 1 deletion(-) diff --git a/relay-profiling/src/android.rs b/relay-profiling/src/android.rs index 6c17d40ec6..8f1f9703cc 100644 --- a/relay-profiling/src/android.rs +++ b/relay-profiling/src/android.rs @@ -322,7 +322,6 @@ mod tests { ); assert_eq!(profile.metadata.active_thread_id, 12345); assert_eq!(profile.metadata.transaction_name, "transaction1"); - assert_eq!(profile.metadata.duration_ns, 1000000000); } #[test]