pub(crate) struct ResourceTracker {Show 19 fields
pub(crate) config: Config,
pub(crate) out_file: Option<BufWriter<File>>,
pub(crate) interval: Duration,
pub(crate) cpu: CpuCollector,
pub(crate) memory: MemoryCollector,
pub(crate) network: NetworkCollector,
pub(crate) disk: DiskCollector,
pub(crate) gpu: GpuCollector,
pub(crate) host_info: HostInfo,
pub(crate) cloud_info: Option<CloudInfo>,
pub(crate) cloud_rx: Option<Receiver<CloudInfo>>,
pub(crate) child: Option<Child>,
pub(crate) sentinel: Option<SentinelClient>,
pub(crate) run_ctx_arc: Option<Arc<Mutex<RunContext>>>,
pub(crate) sample_buffer: Option<Arc<Mutex<Vec<Sample>>>>,
pub(crate) upload_shutdown_flag: Option<Arc<AtomicBool>>,
pub(crate) upload_handle: Option<JoinHandle<Vec<String>>>,
pub(crate) unflushed: Vec<Sample>,
pub(crate) prev_loop_start: Option<Instant>,
}Fields§
§config: Config§out_file: Option<BufWriter<File>>§interval: Duration§cpu: CpuCollector§memory: MemoryCollector§network: NetworkCollector§disk: DiskCollector§gpu: GpuCollector§host_info: HostInfo§cloud_info: Option<CloudInfo>§cloud_rx: Option<Receiver<CloudInfo>>§child: Option<Child>§sentinel: Option<SentinelClient>§run_ctx_arc: Option<Arc<Mutex<RunContext>>>§sample_buffer: Option<Arc<Mutex<Vec<Sample>>>>§upload_shutdown_flag: Option<Arc<AtomicBool>>§upload_handle: Option<JoinHandle<Vec<String>>>§unflushed: Vec<Sample>§prev_loop_start: Option<Instant>Implementations§
Source§impl ResourceTracker
impl ResourceTracker
pub(crate) fn new() -> Self
pub(crate) fn warmup_collectors(&mut self)
pub(crate) fn spawn_tracked_command(&mut self)
pub(crate) fn mask_sensitive_data_in_command(&mut self)
pub(crate) fn try_redact(raw: &str) -> Option<String>
pub(crate) fn mask_first_word(raw: &str, mask: &str) -> Option<String>
pub(crate) fn setup_sentinel(&mut self)
pub(crate) fn emit_csv_header(&mut self)
pub(crate) fn renice_tracker(&self)
pub(crate) fn poll_cloud_info(&mut self)
pub(crate) fn collect_sample(&mut self) -> Sample
pub(crate) fn emit_sample(&mut self, sample: &Sample)
pub(crate) fn buffer_sample(&mut self, sample: Sample)
pub(crate) fn check_child_exit(&mut self) -> Option<i32>
pub(crate) fn check_signal(&self) -> bool
pub(crate) fn sleep_until_next_interval(&self, loop_start: Instant)
pub(crate) fn shutdown(&mut self, exit_code: i32) -> !
pub(crate) fn run(self) -> !
pub(crate) fn create_sink(config: &Config) -> Option<BufWriter<File>>
pub(crate) fn graceful_shutdown( exit_code: i32, sentinel: Option<&SentinelClient>, run_ctx: Option<Arc<Mutex<RunContext>>>, shutdown_flag: Option<Arc<AtomicBool>>, upload_handle: Option<JoinHandle<Vec<String>>>, remaining: Vec<Sample>, interval_secs: u64, ) -> !
pub(crate) fn emit_metric_line( config: &Config, out_file: &mut Option<BufWriter<File>>, msg: &str, )
Auto Trait Implementations§
impl !RefUnwindSafe for ResourceTracker
impl !Sync for ResourceTracker
impl !UnwindSafe for ResourceTracker
impl Freeze for ResourceTracker
impl Send for ResourceTracker
impl Unpin for ResourceTracker
impl UnsafeUnpin for ResourceTracker
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