pub struct UnitsCollectionTimings {
pub list_units_ms: f64,
pub unit_files_ms: f64,
pub per_unit_loop_ms: f64,
pub timer_dbus_fetches: u64,
pub state_dbus_fetches: u64,
pub service_dbus_fetches: u64,
pub slowest_units: Vec<(String, f64)>,
}Expand description
Inner timing breakdown for the units collector D-Bus phases.
Helps locate which step of unit collection dominates wall time when the
units collector is the slowest one in MonitordStats::collector_timings.
Fields§
§list_units_ms: f64Time for the systemd ListUnits D-Bus call (one batched call returning all units).
unit_files_ms: f64Time for filesystem unit file stats collection (runs concurrently with list_units).
per_unit_loop_ms: f64Time spent in the per-unit parse loop, including any per-unit D-Bus calls (timer property fetches, state stats, service stats).
timer_dbus_fetches: u64Number of timer units whose properties were fetched via D-Bus this run.
state_dbus_fetches: u64Number of unit state D-Bus fetches this run (when state_stats_time_in_state is enabled).
service_dbus_fetches: u64Number of per-service D-Bus property fetches this run.
slowest_units: Vec<(String, f64)>Slowest units (by per-unit collection duration, descending) this run,
truncated to units.slowest_units_count. Empty when disabled (count 0).
Trait Implementations§
Source§impl Clone for UnitsCollectionTimings
impl Clone for UnitsCollectionTimings
Source§fn clone(&self) -> UnitsCollectionTimings
fn clone(&self) -> UnitsCollectionTimings
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for UnitsCollectionTimings
impl Debug for UnitsCollectionTimings
Source§impl Default for UnitsCollectionTimings
impl Default for UnitsCollectionTimings
Source§fn default() -> UnitsCollectionTimings
fn default() -> UnitsCollectionTimings
Source§impl<'de> Deserialize<'de> for UnitsCollectionTimings
impl<'de> Deserialize<'de> for UnitsCollectionTimings
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>,
Source§impl PartialEq for UnitsCollectionTimings
impl PartialEq for UnitsCollectionTimings
Source§fn eq(&self, other: &UnitsCollectionTimings) -> bool
fn eq(&self, other: &UnitsCollectionTimings) -> bool
self and other values to be equal, and is used by ==.