pub struct SessionMetadata {
pub session_id: String,
pub session_seq: u64,
pub event_seq: u64,
pub session_sample_rate: f64,
pub session_start_time: Option<String>,
}Expand description
Session metadata attached to each in-session event.
Serialized into the event payload for downstream session-level analysis.
PartialEq is derived (using f64::eq for session_sample_rate).
Eq is implemented manually — it is sound because session_sample_rate
is always clamped to [0.0, 1.0] and is therefore never NaN.
Tests should prefer asserting on individual fields rather than whole-struct
equality for clarity.
Fields§
§session_id: StringThe unique UUID for this session.
session_seq: u64Monotonically increasing session counter, persisted across restarts.
event_seq: u64Per-session event counter, reset at each new session.
session_sample_rate: f64The sampling rate in effect for this session.
session_start_time: Option<String>Wall-clock timestamp at session start (RFC 3339). Absent on events from before sessions introduced this field.
Trait Implementations§
Source§impl Clone for SessionMetadata
impl Clone for SessionMetadata
Source§fn clone(&self) -> SessionMetadata
fn clone(&self) -> SessionMetadata
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<UT> ConvertError<UT> for SessionMetadata
impl<UT> ConvertError<UT> for SessionMetadata
fn try_convert_unexpected_callback_error( e: UnexpectedUniFFICallbackError, ) -> Result<Self>
Source§impl Debug for SessionMetadata
impl Debug for SessionMetadata
Source§impl<'de> Deserialize<'de> for SessionMetadata
impl<'de> Deserialize<'de> for SessionMetadata
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for SessionMetadata
Source§impl<UT> FfiConverter<UT> for SessionMetadata
impl<UT> FfiConverter<UT> for SessionMetadata
Source§const TYPE_ID_META: MetadataBuffer
const TYPE_ID_META: MetadataBuffer
Type ID metadata, serialized into a MetadataBuffer.
Source§type FfiType = RustBuffer
type FfiType = RustBuffer
The low-level type used for passing values of this type over the FFI. Read more
Source§fn lower(v: Self) -> RustBuffer
fn lower(v: Self) -> RustBuffer
Lower a rust value of the target type, into an FFI value of type Self::FfiType. Read more
Source§fn try_lift(buf: RustBuffer) -> Result<Self>
fn try_lift(buf: RustBuffer) -> Result<Self>
Lift a rust value of the target type, from an FFI value of type Self::FfiType. Read more
Source§impl<UT> Lift<UT> for SessionMetadata
impl<UT> Lift<UT> for SessionMetadata
Source§impl<UT> LiftRef<UT> for SessionMetadata
impl<UT> LiftRef<UT> for SessionMetadata
type LiftType = SessionMetadata
Source§impl<UT> LiftReturn<UT> for SessionMetadata
impl<UT> LiftReturn<UT> for SessionMetadata
Source§type ReturnType = <SessionMetadata as Lift<UT>>::FfiType
type ReturnType = <SessionMetadata as Lift<UT>>::FfiType
FFI return type for trait interfaces
Source§fn try_lift_successful_return(v: Self::ReturnType) -> Result<Self>
fn try_lift_successful_return(v: Self::ReturnType) -> Result<Self>
Lift a successfully returned value from a trait interface
Source§fn lift_foreign_return(
ffi_return: Self::ReturnType,
call_status: RustCallStatus,
) -> Self
fn lift_foreign_return( ffi_return: Self::ReturnType, call_status: RustCallStatus, ) -> Self
Lift a foreign returned value from a trait interface Read more
Source§fn lift_error(_buf: RustBuffer) -> Self
fn lift_error(_buf: RustBuffer) -> Self
Lift a Rust value for a callback interface method error result Read more
Source§fn handle_callback_unexpected_error(e: UnexpectedUniFFICallbackError) -> Self
fn handle_callback_unexpected_error(e: UnexpectedUniFFICallbackError) -> Self
Lift a Rust value for an unexpected callback interface error Read more
Source§impl<UT> Lower<UT> for SessionMetadata
impl<UT> Lower<UT> for SessionMetadata
type FfiType = <SessionMetadata as FfiConverter<UT>>::FfiType
fn lower(obj: Self) -> Self::FfiType
fn write(obj: Self, buf: &mut Vec<u8>)
Source§fn lower_into_rust_buffer(obj: Self) -> RustBuffer
fn lower_into_rust_buffer(obj: Self) -> RustBuffer
Convenience method
Source§impl<UT> LowerError<UT> for SessionMetadata
impl<UT> LowerError<UT> for SessionMetadata
Source§fn lower_error(obj: Self) -> RustBuffer
fn lower_error(obj: Self) -> RustBuffer
Lower this value for scaffolding function return Read more
Source§impl<UT> LowerReturn<UT> for SessionMetadata
impl<UT> LowerReturn<UT> for SessionMetadata
Source§type ReturnType = <SessionMetadata as Lower<UT>>::FfiType
type ReturnType = <SessionMetadata as Lower<UT>>::FfiType
The type that should be returned by scaffolding functions for this type. Read more
Source§fn lower_return(v: Self) -> Result<Self::ReturnType, RustCallError>
fn lower_return(v: Self) -> Result<Self::ReturnType, RustCallError>
Lower the return value from an scaffolding call Read more
Source§fn handle_failed_lift(
error: LiftArgsError,
) -> Result<Self::ReturnType, RustCallError>
fn handle_failed_lift( error: LiftArgsError, ) -> Result<Self::ReturnType, RustCallError>
Lower the return value for failed argument lifts Read more
Source§impl MallocSizeOf for SessionMetadata
impl MallocSizeOf for SessionMetadata
Source§fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
Measure the heap usage of all descendant heap-allocated structures, but
not the space taken up by the value itself.
Source§impl PartialEq for SessionMetadata
impl PartialEq for SessionMetadata
Source§fn eq(&self, other: &SessionMetadata) -> bool
fn eq(&self, other: &SessionMetadata) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for SessionMetadata
impl Serialize for SessionMetadata
impl StructuralPartialEq for SessionMetadata
Source§impl<UT> TypeId<UT> for SessionMetadata
impl<UT> TypeId<UT> for SessionMetadata
Auto Trait Implementations§
impl Freeze for SessionMetadata
impl RefUnwindSafe for SessionMetadata
impl Send for SessionMetadata
impl Sync for SessionMetadata
impl Unpin for SessionMetadata
impl UnsafeUnpin for SessionMetadata
impl UnwindSafe for SessionMetadata
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> EncodableKey for Twhere
T: Serialize,
impl<T> EncodableKey for Twhere
T: Serialize,
Source§impl<T, UT> HandleAlloc<UT> for T
impl<T, UT> HandleAlloc<UT> for T
Source§impl<V> ObjectSerialize for Vwhere
V: Serialize + for<'de> Deserialize<'de>,
impl<V> ObjectSerialize for Vwhere
V: Serialize + for<'de> Deserialize<'de>,
Source§fn from_str(obj: &str) -> Result<V, ObjectError>
fn from_str(obj: &str) -> Result<V, ObjectError>
Deserialize the object from its JSON representation. Read more
Source§fn into_serialized_object(self) -> Result<Value, ObjectError>
fn into_serialized_object(self) -> Result<Value, ObjectError>
Serialize this object into a JSON string.