Struct relay_event_schema::protocol::ClientSdkInfo

source ·
pub struct ClientSdkInfo {
    pub name: Annotated<String>,
    pub version: Annotated<String>,
    pub integrations: Annotated<Array<String>>,
    pub features: Annotated<Array<String>>,
    pub packages: Annotated<Array<ClientSdkPackage>>,
    pub client_ip: Annotated<IpAddr>,
    pub other: Object<Value>,
}
Expand description

The SDK Interface describes the Sentry SDK and its configuration used to capture and transmit an event.

Fields§

§name: Annotated<String>

Unique SDK name. Required.

The name of the SDK. The format is entity.ecosystem[.flavor] where entity identifies the developer of the SDK, ecosystem refers to the programming language or platform where the SDK is to be used and the optional flavor is used to identify standalone SDKs that are part of a major ecosystem.

Official Sentry SDKs use the entity sentry, as in sentry.python or sentry.javascript.react-native. Please use a different entity for your own SDKs.

§version: Annotated<String>

The version of the SDK. Required.

It should have the Semantic Versioning format MAJOR.MINOR.PATCH, without any prefix (no v or anything else in front of the major version number).

Examples: 0.1.0, 1.0.0, 4.3.12

§integrations: Annotated<Array<String>>

List of integrations that are enabled in the SDK. Optional.

The list should have all enabled integrations, including default integrations. Default integrations are included because different SDK releases may contain different default integrations.

§features: Annotated<Array<String>>

List of features that are enabled in the SDK. Optional.

A list of feature names identifying enabled SDK features. This list should contain all enabled SDK features. On some SDKs, enabling a feature in the options also adds an integration. We encourage tracking such features with either integrations or features but not both to reduce the payload size.

§packages: Annotated<Array<ClientSdkPackage>>

List of installed and loaded SDK packages. Optional.

A list of packages that were installed as part of this SDK or the activated integrations. Each package consists of a name in the format source:identifier and version. If the source is a Git repository, the source should be git, the identifier should be a checkout link and the version should be a Git reference (branch, tag or SHA).

§client_ip: Annotated<IpAddr>

IP Address of sender??? Seems unused. Do not send, this only leads to surprises wrt PII, as the value appears nowhere in the UI.

§other: Object<Value>

Additional arbitrary fields for forwards compatibility.

Implementations§

source§

impl ClientSdkInfo

source

pub fn has_integration<T: AsRef<str>>(&self, integration: T) -> bool

Trait Implementations§

source§

impl Clone for ClientSdkInfo

source§

fn clone(&self) -> ClientSdkInfo

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ClientSdkInfo

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for ClientSdkInfo

source§

fn default() -> ClientSdkInfo

Returns the “default value” for a type. Read more
source§

impl Empty for ClientSdkInfo

source§

fn is_empty(&self) -> bool

Returns whether this value is empty.
source§

fn is_deep_empty(&self) -> bool

Returns whether this value is empty or all of its descendants are empty. Read more
source§

impl FromValue for ClientSdkInfo

source§

fn from_value(__value: Annotated<Value>) -> Annotated<Self>

Creates a meta structure from an annotated boxed value.
source§

impl IntoValue for ClientSdkInfo

source§

fn into_value(self) -> Value

Boxes the meta structure back into a value.
source§

fn serialize_payload<S>( &self, __serializer: S, __behavior: SkipSerialization, ) -> Result<S::Ok, S::Error>
where Self: Sized, S: Serializer,

Efficiently serializes the payload directly.
source§

fn extract_child_meta(&self) -> MetaMap
where Self: Sized,

Extracts children meta map out of a value.
§

fn extract_meta_tree(value: &Annotated<Self>) -> MetaTree
where Self: Sized,

Extracts the meta tree out of annotated value. Read more
source§

impl PartialEq for ClientSdkInfo

source§

fn eq(&self, other: &ClientSdkInfo) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl ProcessValue for ClientSdkInfo

source§

fn value_type(&self) -> EnumSet<ValueType>

Returns the type of the value.
source§

fn process_value<P>( &mut self, __meta: &mut Meta, __processor: &mut P, __state: &ProcessingState<'_>, ) -> ProcessingResult
where P: Processor,

Executes a processor on this value.
source§

fn process_child_values<P>( &mut self, __processor: &mut P, __state: &ProcessingState<'_>, ) -> ProcessingResult
where P: Processor,

Recurses into children of this value.
source§

impl StructuralPartialEq for ClientSdkInfo

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where T: Clone,

source§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

source§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V