pub struct DiskMetrics {
pub device: String,
pub model: Option<String>,
pub vendor: Option<String>,
pub serial: Option<String>,
pub device_type: Option<DiskType>,
pub capacity_bytes: Option<u64>,
pub mounts: Vec<DiskMountMetrics>,
pub read_bytes_per_sec: f64,
pub write_bytes_per_sec: f64,
pub read_bytes_total: u64,
pub write_bytes_total: u64,
}Expand description
Per-device disk metrics: static identity (cached once) + dynamic throughput and filesystem space (polled each interval).
Fields§
§device: String§model: Option<String>e.g. “Samsung SSD 870 EVO 1TB”, from /sys/block/<dev>/device/model.
vendor: Option<String>e.g. “ATA”, from /sys/block/<dev>/device/vendor.
serial: Option<String>World-Wide ID or serial, from /sys/block/<dev>/device/wwid or serial.
device_type: Option<DiskType>§capacity_bytes: Option<u64>Total raw device capacity in bytes (/sys/block/<dev>/size × 512).
mounts: Vec<DiskMountMetrics>§read_bytes_per_sec: f64§write_bytes_per_sec: f64§read_bytes_total: u64Cumulative bytes read since boot (raw /proc/diskstats sector count × 512).
Matches Python resource-tracker’s disk_read_bytes column.
write_bytes_total: u64Cumulative bytes written since boot (raw /proc/diskstats sector count × 512).
Matches Python resource-tracker’s disk_write_bytes column.
Trait Implementations§
Source§impl Clone for DiskMetrics
impl Clone for DiskMetrics
Source§fn clone(&self) -> DiskMetrics
fn clone(&self) -> DiskMetrics
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 DiskMetrics
impl Debug for DiskMetrics
Source§impl<'de> Deserialize<'de> for DiskMetrics
impl<'de> Deserialize<'de> for DiskMetrics
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 DiskMetrics
impl RefUnwindSafe for DiskMetrics
impl Send for DiskMetrics
impl Sync for DiskMetrics
impl Unpin for DiskMetrics
impl UnsafeUnpin for DiskMetrics
impl UnwindSafe for DiskMetrics
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