pub struct NetworkUsageRecord {
pub app_id: i32,
pub user_id: i32,
pub timestamp: DateTime<Utc>,
pub bytes_sent: u64,
pub bytes_recv: u64,
pub auto_inc_id: u32,
}Expand description
One SRUM network usage record: the bytes a process sent/received in a single ~1-hour measurement interval.
Forensic value: proves exfiltration volumes even after the process is deleted.
Fields§
§app_id: i32Integer ID of the application (look up in crate::IdMapEntry).
user_id: i32Integer ID of the user account (look up in crate::IdMapEntry).
timestamp: DateTime<Utc>UTC timestamp of the measurement interval start.
bytes_sent: u64Bytes sent by the process in this interval.
bytes_recv: u64Bytes received by the process in this interval.
auto_inc_id: u32ESE page number used as AutoIncId proxy for gap detection. Gaps in this sequence indicate deleted records (anti-forensics). Not serialised to JSON output.
Trait Implementations§
Source§impl Clone for NetworkUsageRecord
impl Clone for NetworkUsageRecord
Source§fn clone(&self) -> NetworkUsageRecord
fn clone(&self) -> NetworkUsageRecord
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 Debug for NetworkUsageRecord
impl Debug for NetworkUsageRecord
Source§impl<'de> Deserialize<'de> for NetworkUsageRecord
impl<'de> Deserialize<'de> for NetworkUsageRecord
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 NetworkUsageRecord
impl RefUnwindSafe for NetworkUsageRecord
impl Send for NetworkUsageRecord
impl Sync for NetworkUsageRecord
impl Unpin for NetworkUsageRecord
impl UnsafeUnpin for NetworkUsageRecord
impl UnwindSafe for NetworkUsageRecord
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