Struct 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 settings: Annotated<ClientSdkSettings>,
    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.

§settings: Annotated<ClientSdkSettings>

Settings that are used to control behaviour of relay.

§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 FromObjectRef for ClientSdkInfo

Source§

fn from_object_ref(__obj: &mut Object<Value>) -> Self

Creates a meta structure from key value pairs. 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 IntoObjectRef for ClientSdkInfo

Source§

fn into_object_ref(self, __map: &mut Object<Value>)

Boxes the meta structure back into an object of values. Read more
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.
Source§

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 u8)

🔬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.

§

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

§

fn from_ref(input: &T) -> T

Converts to this type from a reference to the input type.
§

impl<T> FutureExt for T

§

fn with_context(self, otel_cx: Context) -> WithContext<Self>

Attaches the provided Context to this type, returning a WithContext wrapper. Read more
§

fn with_current_context(self) -> WithContext<Self>

Attaches the current Context to this type, returning a WithContext wrapper. Read more
§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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> IntoRequest<T> for T

Source§

fn into_request(self) -> Request<T>

Wrap the input message T in a tonic::Request
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

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where T: 'static,

§

impl<T> MaybeSendSync for T