diff --git a/sentry-core/src/performance.rs b/sentry-core/src/performance.rs index 062899aeb..a0046d304 100644 --- a/sentry-core/src/performance.rs +++ b/sentry-core/src/performance.rs @@ -570,6 +570,7 @@ impl Transaction { transaction.release.clone_from(&opts.release); transaction.environment.clone_from(&opts.environment); transaction.sdk = Some(std::borrow::Cow::Owned(client.sdk_info.clone())); + transaction.server_name.clone_from(&opts.server_name); drop(inner); diff --git a/sentry-types/src/protocol/v7.rs b/sentry-types/src/protocol/v7.rs index a2fc3a880..2aa3e0e14 100644 --- a/sentry-types/src/protocol/v7.rs +++ b/sentry-types/src/protocol/v7.rs @@ -1989,6 +1989,9 @@ pub struct Transaction<'a> { /// Optionally HTTP request data to be sent along. #[serde(default, skip_serializing_if = "Option::is_none")] pub request: Option, + /// Optionally the server (or device) name of this event. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub server_name: Option>, } impl<'a> Default for Transaction<'a> { @@ -2008,6 +2011,7 @@ impl<'a> Default for Transaction<'a> { spans: Default::default(), contexts: Default::default(), request: Default::default(), + server_name: Default::default(), } } } @@ -2035,6 +2039,7 @@ impl<'a> Transaction<'a> { spans: self.spans, contexts: self.contexts, request: self.request, + server_name: self.server_name.map(|x| Cow::Owned(x.into_owned())), } }