in src/data/sysctldata.rs [48:69]
fn collect_data(&mut self, _params: &CollectorParams) -> Result<()> {
let ctls = sysctl::CtlIter::root().filter_map(Result::ok);
for ctl in ctls {
let flags = match ctl.flags() {
Ok(f) => f,
Err(_) => continue,
};
if !flags.contains(sysctl::CtlFlags::SKIP) && can_collect(ctl.name()?) {
let name = match ctl.name() {
Ok(s) => s,
_ => continue,
};
let value = match ctl.value_string() {
Ok(s) => s,
_ => continue,
};
self.add_ctl(name, value);
}
}
trace!("{:#?}", self.sysctl_data);
Ok(())
}