pub struct SessionMetadata {
pub session_id: Uuid,
pub device_id: Option<String>,
pub client_id: Option<String>,
pub created_at: DateTime<Utc>,
pub last_accessed_at: DateTime<Utc>,
pub last_refreshed_at: Option<DateTime<Utc>>,
pub source: SessionSource,
pub ip_address: Option<String>,
pub user_agent: Option<String>,
pub location: Option<SessionLocation>,
pub tags: Vec<String>,
pub custom: HashMap<String, Value>,
}
Expand description
Session metadata for tracking and analytics
Fields§
§session_id: Uuid
Unique session identifier
device_id: Option<String>
Device identifier
client_id: Option<String>
Browser/client identifier
created_at: DateTime<Utc>
Session creation timestamp
last_accessed_at: DateTime<Utc>
Last access timestamp
last_refreshed_at: Option<DateTime<Utc>>
Last refresh timestamp
source: SessionSource
Session source (web, mobile, desktop, etc.)
ip_address: Option<String>
IP address (if available)
user_agent: Option<String>
User agent string
location: Option<SessionLocation>
Geographic location info
Session tags for organization
custom: HashMap<String, Value>
Custom metadata
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 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§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
Auto Trait Implementations§
impl Freeze for SessionMetadata
impl RefUnwindSafe for SessionMetadata
impl Send for SessionMetadata
impl Sync for SessionMetadata
impl Unpin 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,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more